阅读其他帖子我认为我必须使用BigInteger在30到32位数之间生成20,000个随机数。
public BigInteger(int numBits, Random rnd)
但这不允许数字的最小和最大范围。
由于
答案 0 :(得分:2)
如果您想使用此功能,可以执行
public static BigInteger random(Random rand, BigInteger minValue, BigInteger maxValue) {
BigInteger range = maxValue.subtract(minValue).add(BigInteger.ONE);
int bits = range.bitLength();
BigInteger ret;
do {
ret = new BigInteger(bits, rand);
} while(ret.compareTo(range) >= 0);
return ret.add(minValue);
}