C# - 带种子的随机数
C# - Random number with seed
我有这个代码:
var rand = new Random(0);
for(int i = 0; i < 100; i++)
{
Console.WriteLine(rand.Next(0, 100));
}
并且程序应该给我相同数字的 100 倍(因为种子是相同的),但它给出不同的数字...
为什么?
编辑:
什么时候做
for(int i = 0; i < 100; i++)
{
Console.WriteLine(new Random(0).Next);
}
即returns每次都是相同的数字。这意味着,种子正在改变?如果是,如何?增加了吗?
它不应该给你 100 个相同的数字,但它应该在你每次重新启动应用程序时给你完全相同的 100 个数字。
种子用于使随机可预测。想象一下您希望某些东西是随机的多人游戏。但是你想确保这个随机数对每个 player/client 表现相同。 seed
是去这里的路。
我有这个代码:
var rand = new Random(0);
for(int i = 0; i < 100; i++)
{
Console.WriteLine(rand.Next(0, 100));
}
并且程序应该给我相同数字的 100 倍(因为种子是相同的),但它给出不同的数字...
为什么?
编辑:
什么时候做
for(int i = 0; i < 100; i++)
{
Console.WriteLine(new Random(0).Next);
}
即returns每次都是相同的数字。这意味着,种子正在改变?如果是,如何?增加了吗?
它不应该给你 100 个相同的数字,但它应该在你每次重新启动应用程序时给你完全相同的 100 个数字。
种子用于使随机可预测。想象一下您希望某些东西是随机的多人游戏。但是你想确保这个随机数对每个 player/client 表现相同。 seed
是去这里的路。