我需要使用Random
对象生成随机值。它生成从0到1的值,但我想生成属于[0,10e-7]
和[10e-7,1]
范围的随机值。
答案 0 :(得分:3)
double max, min;
if (Math.random() > .5) { // adjust ratio of ranges here
min = 0;
max = .00000001;
} else {
min = .00000001;
max = 1;
}
double random = Math.random() * (max - min) + min;
答案 1 :(得分:0)
您可以使用nextDouble()
类的Random
方法获取0到10e-7之间的数字。
然后,在第一种情况下,将数字除以10e7得到[0,10e-7]范围内的值,如果低于第二种情况的该值,则将10e-7加到生成值中。