Random在生成随机数的时候,如果生成的时间非常短,那么很可能会出现生成的随机数重复的问题。
示例:
static void Main(string[] args)
{
for (int i = 0; i < 10; i++)
{
Random random = new Random();
Console.WriteLine(random.Next(1, 100));
}
Console.ReadKey();
}
输出如下:

解决方案:只使用一个Random类。
static void Main(string[] args)
{
Random random = new Random();
for (int i = 0; i < 10; i++)
{
Console.WriteLine(random.Next(1, 100));
}
Console.ReadKey();
}
由此可推出,将Random设为静态的,或者单例封装一下就没问题了。

Random生成随机数重复的问题,布布扣,bubuko.com
原文地址:http://www.cnblogs.com/mingxuantongxue/p/3820644.html