一天后种子发生变化的Java随机数

时间:2016-09-22 08:10:32

标签: java random random-seed

我使用下面的代码生成带种子的随机数,以便下次我可以生成相同的结果。

int seed = 100;    
Random rand = new Random(seed);

我设法在同一天从该计划中取回相同的结果,但在一两天之后我得到了完全不同的结果。我实现随机种子的方式有问题吗?以前有人遇到过这个吗?

1 个答案:

答案 0 :(得分:3)

引自Javadoc

  

如果使用相同的种子创建了两个Random实例,并且为每个实例创建了相同的方法调用序列,则它们将生成并返回相同的数字序列。

这实际上取决于你如何使用该实例。它必须与您调用的方法序列完全相同。

这意味着问题出在调用Random实例上的方法的代码中。调用的方法序列似乎依赖于一些可以改变它的条件。