Random 类的实例 random
random.doubles(1, var1, var2 ).findFirst().orElse(0);
貌似只能生成 [var1, var2) 的随机数(左闭右开),
我想生成[var1, var2](左闭右闭)的该怎么写?
PHPz2017-04-18 09:51:20
解决方法:random.doubles(1, var1, var2 + Double.MIN_VALUE).findFirst().orElse(0);
double可表示的小数位数过多,所以按概率来说,要能随机出var2的机率太小,建议楼主可以忽略。如果你只取固定的小数位数,例如2位小数,可以这样做:
// 取[1.20, 1.30]
long n = random.longs(1, 120, 130 + 1).findFirst().orElse(0);
// 将n的小数点左移两位