无法获得随机数以生成两个数字之间的数字

时间:2014-03-28 23:56:22

标签: java

使用这段代码我一直试图在它们之间得到一个数字 我正在使用双,所以我可以使用负数

double minX = plugin.getConfig().getDouble("location.min.x");
double maxX = plugin.getConfig().getDouble("location.max.x");
double randomX = random.nextDouble(maxX-minX) + minX;

但我得到了

The method nextDouble() in the type Random is not applicable for the arguments (double)

但是,如果我将它们设置为整数,它的效果非常好。

2 个答案:

答案 0 :(得分:2)

  • nextDouble(),...统一返回下一个伪随机数 从该随机数分布的值介于0.0和1.0之间 发电机的顺序。

所以改成它:

double randomX = random.nextDouble()*(maxX - minX) + minX;

答案 1 :(得分:0)

方法:Random.nextDouble(),与Random.nextBoolean()和Random类的其他一些方法一样,不带任何上限参数。一个常见的解决方法/解决方案是由上面的薄片提供的,即:

double randomX = random.nextDouble()*(maxX - minX) + minX;