Generate a random double in a range
我有两个双打,如下所示
1 2 | double min = 100; double max = 101; |
并且使用随机生成器,我需要在min和max的范围之间创建一个double值。
但这里没有任何东西我们可以指定范围。
要生成
这个问题是在Java 7发布之前提出的,但是现在,还有另一种使用Java 7(及以上)API的方法:
1 | double random = ThreadLocalRandom.current().nextDouble(min, max); |
用这个:
1 2 3 4 5 |
编辑:
编辑2:
Tks @daniel和@aaa bbb。 我的第一个答案是错的。
1 2 3 4 5 6 7 8 9 10 11 12 13 | import java.util.Random; public class MyClass { public static void main(String args[]) { Double min = 0.0; // Set To Your Desired Min Value Double max = 10.0; // Set To Your Desired Max Value double x = (Math.random() * ((max - min) + 1)) + min; // This Will Create A Random Number Inbetween Your Min And Max. double xrounded = Math.round(x * 100.0) / 100.0; // Creates Answer To The Nearest 100 th, You Can Modify This To Change How It Rounds. System.out.println(xrounded); // This Will Now Print Out The Rounded, Random Number. } } |
1 2 3 4 5 |