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

本文关键字:返回 Next Random System | 更新日期: 2023-09-27 18:11:14

我正在使用System.Random,我想知道。如果我提供一个特定的种子,随机数序列在每台运行代码的计算机上都是相同的吗?在未来的版本中,它会继续保持不变吗(也就是说,它会被内置到规范中吗?)

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

如果我提供一个特定的种子,随机数序列在每台运行代码的计算机上都是相同的吗?

是的。这就是种子的意义。

它在未来的版本中会继续保持不变吗(也就是说,它是内置在规范中的吗?)

很有可能,但不能保证。System.Random的文档说明:

Random类的当前实现是基于Donald E. Knuth的减法随机数生成器算法。欲了解更多信息,请参阅d.e.k nuth。计算机程序设计艺术,第二卷:半数值算法。Addison-Wesley, Reading, MA,第二版,1981.

这里的措辞确实为将来的实现改变算法留下了余地。