EN
Java - 4 different ways to generate random double
2 points
xxxxxxxxxx
1
public static double nextDouble() {
2
return ThreadLocalRandom.current().nextDouble();
3
}
Example:
xxxxxxxxxx
1
System.out.println(nextDouble()); // 0.6260248581412109
2
System.out.println(nextDouble()); // 0.8624217725537807
3
System.out.println(nextDouble()); // 0.4870344165107542
xxxxxxxxxx
1
public static double nextDouble2() {
2
return new Random().nextDouble();
3
}
Example:
xxxxxxxxxx
1
System.out.println(nextDouble2()); // 0.8853243052768429
2
System.out.println(nextDouble2()); // 0.763297548370907
3
System.out.println(nextDouble2()); // 0.8125479078816122
xxxxxxxxxx
1
public static double nextDouble3() {
2
return Math.random();
3
}
Example:
xxxxxxxxxx
1
System.out.println(nextDouble3()); // 0.36225288271248024
2
System.out.println(nextDouble3()); // 0.03675822890573344
3
System.out.println(nextDouble3()); // 0.48065002903809895
xxxxxxxxxx
1
public static double nextDouble4() {
2
// java 8 + DoubleStream
3
return new Random().doubles().limit(1).findFirst().getAsDouble();
4
}
Example:
xxxxxxxxxx
1
System.out.println(nextDouble4()); // 0.9310238127103216
2
System.out.println(nextDouble4()); // 0.7304200864872137
3
System.out.println(nextDouble4()); // 0.9112523320636519
ThreadLocalRandom - Java docs
Math - Java docs
Random - Java docs
DoubleStream - Java docs