当我执行以下代码时,我总是选择相同的颜色。
static void Main(string[] args)
{
string[] Colors = new string[10] { "Red", "Yellow", "Green", "Blue", "Purple", "White", "violet", "orange", "indigo", "blue" };
for (int i = 0; i < 13; i++)
{
Random rnd = new Random();
int code = rnd.Next(0, 9);
string Color = Colors[code];
Console.WriteLine(Color);
}
Console.ReadLine();
}
但是如果`随机rnd = new Random();' 在循环之外创建,则结果是唯一的。如果循环以更快的速度执行,那么输出将是相同的。假设我在 for 循环中执行了一些数据库插入操作,结果将是不同的(随机的)(使用断点逐步执行也会导致随机选择)。
难道真的不可能在这么短的时间内提供不同的种子吗?