将种子添加到C#随机数总是会产生相同的结果

时间:2014-10-24 02:43:30

标签: c# random

每当我有两个随机数生成时如此:

 Random rand1 = new Random();
 Random rand2 = new Random(23);

第二个随机数的值永远不会改变

虽然rand1在每次加载时都有所不同,但rand2始终显示值396。 我是否错误地宣布种子?

1 个答案:

答案 0 :(得分:2)

第二个随机值永远不会完全由设计改变。此外,如果在将生成器播种到固定数字后存储前100或1000个随机数,则每次运行程序时都会得到相同的序列。

播种伪随机数生成器专门用于生成可重复的随机数序列。这对于测试需要使用随机数的代码非常有用,但是为了测试目的,您需要可重复的行为。

在您不需要反复生成相同的伪随机序列的情况下,您可以将随机数生成器播种到某个更改的数字,例如当前系统时间。