EN
Java - generate random int in range
7 points
xxxxxxxxxx
1
public static int nextInt(int min, int max) {
2
return ThreadLocalRandom.current().nextInt(min, max);
3
}
Example:
xxxxxxxxxx
1
System.out.println(nextInt(1, 100)); // 51
2
System.out.println(nextInt(1, 100)); // 98
3
System.out.println(nextInt(1, 100)); // 17
4
System.out.println(nextInt(500, 1000)); // 766
5
System.out.println(nextInt(-100, -5)); // -29
xxxxxxxxxx
1
public static int nextInt2(int min, int max) {
2
return new Random().nextInt((max - min) + 1) + min;
3
}
Example:
xxxxxxxxxx
1
System.out.println(nextInt2(1, 100)); // 60
2
System.out.println(nextInt2(1, 100)); // 24
3
System.out.println(nextInt2(1, 100)); // 70
4
System.out.println(nextInt2(500, 1000)); // 858
5
System.out.println(nextInt2(-100, -5)); // -97
xxxxxxxxxx
1
public static int nextInt3(int min, int max) {
2
return (int) (Math.random() * ((max - min) + 1)) + min;
3
}
Example:
xxxxxxxxxx
1
System.out.println(nextInt3(1, 100)); // 32
2
System.out.println(nextInt3(1, 100)); // 26
3
System.out.println(nextInt3(1, 100)); // 99
4
System.out.println(nextInt3(500, 1000)); // 547
5
System.out.println(nextInt3(-100, -5)); // -88
xxxxxxxxxx
1
public static int nextInt4(int min, int max) {
2
// java 8
3
return new Random().ints(min, (max + 1)).limit(1).findFirst().getAsInt();
4
}
Example:
xxxxxxxxxx
1
System.out.println(nextInt4(1, 100)); // 63
2
System.out.println(nextInt4(1, 100)); // 72
3
System.out.println(nextInt4(1, 100)); // 40
4
System.out.println(nextInt4(500, 1000)); // 893
5
System.out.println(nextInt4(-100, -5)); // -53
ThreadLocalRandom.nextInt(int origin, int bound) - java docs
Random().nextInt(int bound) - java docs
Math.random() - java docs
Random().ints(int randomNumberOrigin, int randomNumberBound) - java docs