如何随机化linq项目?C# - 随机化Linq项目
var words = new[] { "a", "b", "c", "d" };
richTextBox1.AppendText(Environment.NewLine + words);
地方有(Environment.NewLine + words);
我想是随机什么话。因此,例如,这些可能是输出:
BCAD,AC,DA,驾驶室,ABB,
例如。
如何随机化linq项目?C# - 随机化Linq项目
var words = new[] { "a", "b", "c", "d" };
richTextBox1.AppendText(Environment.NewLine + words);
地方有(Environment.NewLine + words);
我想是随机什么话。因此,例如,这些可能是输出:
BCAD,AC,DA,驾驶室,ABB,
例如。
你可以这样做:
var newWords = new List<string>();
while(Random.Range(0,someProbability) != 0){
newWords.Add(words[Random.Range(0,words.Length)]);
}
words = newWords.ToArray();
其中someProbability决定了你的新词多长时间可能是。
您可以使用此获得随机顺序。
Random rand =new Random();
words.OrderBy(x => rand.Next()).ToArray()
对于删除你需要弄清楚你的自我。也看起来像你想重复,但这应该让你开始。
这将取前0-4
words.OrderBy(x =>rand.Next()).Take(rand.Next(0,4)).ToArray()
一个简单的方法来产生随机的话应该是:
public static string RandomString(int length)
{
const string chars = "abcdefghijklmnopqrstuvwxyz";
var random = new Random(Guid.NewGuid().GetHashCode());
return new string(
Enumerable.Repeat(chars, length)
.Select(s => s[random.Next(s.Length)]).ToArray());
}
您正在试图找出字母的可能组合。搜索它,你会希望得到很多想法。 – Rahul