每当我有两个随机数生成时如此:
Random rand1 = new Random();
Random rand2 = new Random(23);
第二个随机数的值永远不会改变
虽然rand1在每次加载时都有所不同,但rand2始终显示值396。 我是否错误地宣布种子?
答案 0 :(得分:2)
第二个随机值永远不会完全由设计改变。此外,如果在将生成器播种到固定数字后存储前100或1000个随机数,则每次运行程序时都会得到相同的序列。
播种伪随机数生成器专门用于生成可重复的随机数序列。这对于测试需要使用随机数的代码非常有用,但是为了测试目的,您需要可重复的行为。
在您不需要反复生成相同的伪随机序列的情况下,您可以将随机数生成器播种到某个更改的数字,例如当前系统时间。