System.Random.Next()总是会返回相同的序列

时间:2014-07-02 18:09:15

标签: c# random

我正在使用System.Random,我在想。如果我提供特定种子,那么在运行代码的每台计算机上,随机数序列是否相同?它是否会继续与未来版本相同(即它是否内置于规范中?)

1 个答案:

答案 0 :(得分:5)

  

如果我提供特定种子,那么运行代码的每台计算机上的随机数序列是否相同?

是。这就是种子的意义。

  

未来版本是否会继续相同(即它是否内置于规范中?)

最有可能,但这并不能保证。 documentation for System.Random states

  

Random类的当前实现基于Donald E. Knuth的减法随机数生成器算法。有关更多信息,请参阅D. E. Knuth。 "计算机程序设计的艺术,第2卷:研究数学算法"。 Addison-Wesley,Reading,MA,第二版,1981年。

这里的措辞确实为未来实施改变算法做准备。