我有这段代码:
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);
}
每次返回相同的数字。那意味着种子正在改变?如果有,怎么样?它在增加吗?
答案 0 :(得分:10)
它不应该给你100个相同的数字,但每次重新启动应用程序时它应该给你完全相同的100个数字。
种子用于随机预测。想象多人游戏,你想要随机的东西。但是你想确保每个玩家/客户的随机行为相同。 seed
是前往这里的方式。