生成非常大的随机数java
我们如何在java中生成非常大的随机数? 我在说10000个数字? 我知道我们必须使用BigInteger,但我们怎么做呢? 做这样的事最有效的方法是什么? 请提供一个小例子。 谢谢。
好吧,一种方法是去Random.org并下载一个二进制随机文件。 文件是从大气噪声中生成的,所以它非常随机。 我用它作为我的国际象棋引擎中的Zobrist键。
或者你可以去
BigInteger b = new BigInteger(256, new Random());
这会给你你想要的。 在此示例中,BigInteger由256位组成。
将Random.nextBytes(byte[])
与BigInteger(byte[])
组合Random.nextBytes(byte[])
。
import java.util.*; import java.math.*; class Test{ public static void main(String[]_){ int n = 16; Random r = new Random(); byte[] b = new byte[n]; r.nextBytes(b); BigInteger i = new BigInteger(b); System.out.println(i); } }