随机化字符串

本文关键字:字符串 随机化 | 更新日期: 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());