java 生成随机数
迷茫
迷茫 2017-04-18 09:49:20
0
1
811

Random 类的实例 random

random.doubles(1, var1, var2  ).findFirst().orElse(0);

貌似只能生成 [var1, var2) 的随机数(左闭右开),
我想生成[var1, var2](左闭右闭)的该怎么写?

迷茫
迷茫

业精于勤,荒于嬉;行成于思,毁于随。

全部回复(1)
PHPzhong

解决方法:
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的小数点左移两位
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板