如果我在 java 程序中对 Random 使用相同的种子值并在两台不同的机器上运行它,我会得到相同的数字集吗?
例如
long seed = 123L;//may be taken from some database or something
java.util.Random ran = new java.util.Random(seed);
int ret = 0;
for (int i= 0; i< 10; i++){
ret = ran.nextInt(1000);
System.out.println("ret="+ret);
}
我总是得到
ret=782
ret=450
ret=176
ret=789
ret=795
ret=657
ret=834
ret=837
ret=585
ret=453
如果我在我的计算机上多次运行,我会得到相同的一组数字.. 但是假设有人设法获得我使用的秘密种子值(通过猜测或从存储它的秘密位置)并运行此代码他的机器,他会得到相同的数字吗?