这个问题在这里已经有答案了:
如何在java中生成一个随机的biginteger值(8个答案)两天前关门了。
BigInteger bigInteger = new BigInteger("534534");
介于2和biginteger-2之间的范围;
ufj5ltwl1#
你可以在封闭范围[x1,x2]内生成一个随机的双精度数,像这样[1]:
double f = Math.random()/Math.nextDown(1.0); double x = x1*(1.0 - f) + x2*f;
使用范围介于2和biginteger-2之间的bigdecimals;:
double f = Math.random()/Math.nextDown(1.0); BigDecimal.valueOf(2).multiply(BigDecimal.valueOf(1.0 - f)).add(new BigDecimal(bigInteger.subtract(BigInteger.valueOf(2))).multiply(BigDecimal.valueOf(f))).toBigInteger()
1条答案
按热度按时间ufj5ltwl1#
你可以在封闭范围[x1,x2]内生成一个随机的双精度数,像这样[1]:
使用范围介于2和biginteger-2之间的bigdecimals;: