我正在使用System.Random
,我在想。如果我提供特定种子,那么在运行代码的每台计算机上,随机数序列是否相同?它是否会继续与未来版本相同(即它是否内置于规范中?)
答案 0 :(得分:5)
如果我提供特定种子,那么运行代码的每台计算机上的随机数序列是否相同?
是。这就是种子的意义。
未来版本是否会继续相同(即它是否内置于规范中?)
最有可能,但这并不能保证。 documentation for System.Random
states:
Random类的当前实现基于Donald E. Knuth的减法随机数生成器算法。有关更多信息,请参阅D. E. Knuth。 "计算机程序设计的艺术,第2卷:研究数学算法"。 Addison-Wesley,Reading,MA,第二版,1981年。
这里的措辞确实为未来实施改变算法做准备。