随机化字符串
本文关键字:字符串 随机化 | 更新日期: 2023-09-27 18:30:27
我是C#的新手,所以不要因为我的愚蠢而责怪我。我正在开发一个应用程序,该应用程序应该随机化一个单词并给出它的长度,例如你写一个单词"Line",它给你"iLen"。目前我确定只有这部分有效:
private void lenght_Click(object sender, EventArgs e)
{
String word = textBox1.Text;
int x = word.Length;
MessageBox.Show(x.ToString());
}
private void randomize_Click(object sender, EventArgs e)
{
String word = textBox1.Text;
int x = word.Length;
}
我尝试了很多,但其中大部分只是使应用程序崩溃,所以目前我 想知道 Text.ToCharArray 是做什么的,我希望得到额外的支持。所以我只需要一种方法来随机化你的字符串,它给你另一个字符串,只是带有捣碎/随机字符。现在,我将把问题留5-7个小时,以便稍后获得更多答案,我将全部审查它们并代表工作。感谢您的支持!我已经阅读了您的所有评论,但我很抱歉,现在是时候检查所有内容了。
Randomize
方法(来自另一个SO问题):
public static T[] Randomize<T>(T[] source)
{
List<T> randomized = new List<T>();
List<T> original = new List<T>(source);
Random r = new Random();
for (int size = original.Count; size > 0; size--)
{
int index = r.Next(size);
randomized.Add(original[index]);
original[index] = original[size - 1];
}
return randomized.ToArray();
}
和用法:
string text = "Line";
string randomized = new string(Randomize(text.ToCharArray()));
Random rand = new Random();
var output = new string(input.OrderBy(x => rand.Next()).ToArray());