Genera un numero casuale compreso tra 1 e 10 in Java
-
random.nextInt()
per generare un numero casuale compreso tra 1 e 10 -
Math.random()
per generare numeri casuali compresi tra 1 e 10 -
ThreadLocalRandom.current.nextInt()
per generare numeri casuali compresi tra 1 e 10
Esamineremo i passaggi per generare un numero casuale compreso tra 1 e 10 in modo casuale in Java. Vedremo tre pacchetti o classi Java in grado di generare un numero casuale compreso tra 1 e 10 e quale di essi è il più adatto da utilizzare.
random.nextInt()
per generare un numero casuale compreso tra 1 e 10
java.util.Random
è un pacchetto fornito con Java e possiamo usarlo per generare un numero casuale tra un intervallo. Nel nostro caso, l’intervallo è compreso tra 1 e 10.
Questo pacchetto ha una classe Random
che ci permette di generare più tipi di numeri, sia che si tratti di un int
o di un float
. Guarda l’esempio per capire meglio.
import java.util.Random;
public class Main {
public static void main(String[] args) {
int min = 1;
int max = 10;
Random random = new Random();
int value = random.nextInt(max + min) + min;
System.out.println(value);
}
}
Produzione:
6
Per dimostrare che la tecnica di cui sopra funziona e genera numeri casuali ogni volta, possiamo utilizzare un bucle per generare un nuovo numero casuale fino al termine. Poiché non abbiamo una vasta gamma di numeri, i numeri casuali possono essere ripetuti.
import java.util.Random;
public class Main {
public static void main(String[] args) {
Random random = new Random();
for (int i = 1; i <= 10; i++) {
int value = random.nextInt((10 - 1) + 1) + 1;
System.out.println(value);
}
}
Produzione:
10
7
2
9
2
7
6
4
9
Math.random()
per generare numeri casuali compresi tra 1 e 10
Un’altra classe che può aiutarci a raggiungere il nostro obiettivo è Math
con più funzioni statiche per randomizzare i numeri. Useremo il metodo random()
. Restituisce un valore casuale del tipo float
. Questo è il motivo per cui dobbiamo convertirlo in un int
.
public class Main {
public static void main(String[] args) {
int min = 1;
int max = 10;
for (int i = min; i <= max; i++) {
int getRandomValue = (int) (Math.random() * (max - min)) + min;
System.out.println(getRandomValue);
}
}
Produzione:
5
5
2
1
6
9
3
6
5
7
ThreadLocalRandom.current.nextInt()
per generare numeri casuali compresi tra 1 e 10
L’ultimo metodo nella nostra lista per ottenere numeri casuali tra 1 e 10 è usare la classe ThreadLocalRandom
che è stata introdotta in JDK 7 per programmi multi-thread.
Possiamo vedere di seguito che dobbiamo chiamare il metodo current()
della classe poiché vogliamo che i numeri casuali vengano generati nel thread corrente.
import java.util.concurrent.ThreadLocalRandom;
public class Main {
public static void main(String[] args) {
int min = 1;
int max = 10;
for (int i = 1; i <= 10; i++) {
int getRandomValue = ThreadLocalRandom.current().nextInt(min, max) + min;
System.out.println(getRandomValue);
}
}
}
Produzione:
3
4
5
8
6
2
6
10
6
2
Rupam Saini is an android developer, who also works sometimes as a web developer., He likes to read books and write about various things.
LinkedIn