Genera numero casuale all'interno di un intervallo specificato in Java
-
Genera numero casuale utilizzando la classe
ThreadLocalRandom
in Java -
Genera numero casuale utilizzando la classe
Math
in Java -
Genera numero casuale utilizzando la classe
Random
in Java -
Genera numero casuale utilizzando la classe
Random
in Java -
Genera numero casuale utilizzando la classe
Random
eIntStream
in Java -
Genera numero casuale utilizzando il metodo
nextFloat
in Java -
Genera numero casuale utilizzando la classe
RandomData
in Java -
Genera numero casuale utilizzando la classe
SecureRandom
in Java -
Genera numero casuale utilizzando la classe
RandomUtils
in Java
Questo tutorial introduce come generare un numero casuale all’interno di un intervallo specificato in Java.
Ci sono diversi modi per generare un numero casuale in Java, come il metodo nextInt()
della classe ThreadLocalRandom
, il metodo random()
della classe Math
, il metodo nextInt()
della classe Random
, il metodo ints()
della classe Random
, il metodo nextFloat()
della classe Random
e la classe RandomUtil
, ecc.
Genera numero casuale utilizzando la classe ThreadLocalRandom
in Java
Il pacchetto simultaneo Java fornisce una classe ThreadLocalRandom
che ha il metodo nextInt()
. Questo metodo può generare un numero intero casuale all’interno dell’intervallo specificato. Vedi l’esempio sotto.
import java.util.concurrent.ThreadLocalRandom;
public class SimpleTesting {
public static void main(String[] args) {
int min_val = 10;
int max_val = 100;
ThreadLocalRandom tlr = ThreadLocalRandom.current();
int randomNum = tlr.nextInt(min_val, max_val + 1);
System.out.println("Random Number: " + randomNum);
}
}
Produzione:
Value in double: 12.9
Value in int: 12
Genera numero casuale utilizzando la classe Math
in Java
La classe Java Math
può essere utilizzata per generare un numero casuale all’interno dell’intervallo specificato. Qui, usiamo il metodo random()
della classe Math
per ottenere un numero casuale. Vedi l’esempio sotto.
public class SimpleTesting {
public static void main(String[] args) {
int min_val = 10;
int max_val = 100;
double randomNum = Math.random() * (max_val - min_val);
System.out.println("Random Number: " + randomNum);
}
}
Produzione:
Id: 1212
Name: Samre
Genera numero casuale utilizzando la classe Random
in Java
La classe Random
di Java può generare un numero intero casuale all’interno dell’intervallo specificato utilizzando il metodo nextInt()
, che restituisce un valore intero. Vedi l’esempio sotto.
import java.util.Random;
public class SimpleTesting {
public static void main(String[] args) {
int min_val = 10;
int max_val = 100;
Random ran = new Random();
int x = ran.nextInt(max_val) + min_val;
System.out.println("Random Number: " + x);
}
}
Produzione:
Id: 1212
Name: Samre
Genera numero casuale utilizzando la classe Random
in Java
Questa è un’altra soluzione per ottenere un numero intero casuale all’interno dell’intervallo specificato. Qui, usiamo il metodo nextInt()
della classe Random
con parametri differenti. Vedi l’esempio sotto.
import java.util.Random;
public class SimpleTesting {
public static void main(String[] args) {
int min_val = 10;
int max_val = 100;
Random rand = new Random();
int randomNum = min_val + rand.nextInt((max_val - min_val) + 1);
System.out.println("Random Number: " + randomNum);
}
}
Produzione:
Random Number: 75
Genera numero casuale utilizzando la classe Random
e IntStream
in Java
Qui, usiamo il metodo ints()
della classe Random
che restituisce un flusso di numeri casuali. Usiamo il metodo forEach()
per stampare tutti gli interi casuali generati dal metodo ints()
. Vedi l’esempio sotto.
import java.util.Random;
import java.util.stream.IntStream;
public class SimpleTesting {
public static void main(String[] args) {
int min_val = 10;
int max_val = 100;
Random rand = new Random();
IntStream stream = rand.ints(5, min_val, max_val);
stream.forEach(System.out::println);
}
}
Produzione:
94
35
90
74
47
Genera numero casuale utilizzando il metodo nextFloat
in Java
La classe Random
fornisce un metodo nextFloat()
per generare un numero casuale di tipo float. Se vogliamo ottenere un numero casuale di tipo float, questo metodo è utile. Vedi l’esempio sotto.
import java.util.Random;
public class SimpleTesting {
public static void main(String[] args) {
int min_val = 10;
int max_val = 100;
Random rand = new Random();
float rand_val = rand.nextFloat() * (max_val - min_val);
System.out.println(rand_val);
}
}
Produzione:
71.88764
Genera numero casuale utilizzando la classe RandomData
in Java
Se stai lavorando con la libreria apache commons, usa la classe RandomData
. Questa classe fornisce un metodo nextInt()
che restituisce un valore intero. Possiamo utilizzare questo metodo per generare numeri interi casuali all’interno dell’intervallo specificato. Vedi l’esempio sotto.
import org.apache.commons.math.random.RandomData;
import org.apache.commons.math.random.RandomDataImpl;
public class SimpleTesting {
public static void main(String[] args) {
int min_val = 10;
int max_val = 100;
RandomData randomData randomData = new RandomDataImpl();
int number = randomData.nextInt(min_val, max_val);
System.out.println(number);
}
}
Produzione:
72
Genera numero casuale utilizzando la classe SecureRandom
in Java
La classe SecureRandom appartiene al pacchetto security
di Java che viene utilizzato per creare un numero casuale sicuro. Qui, usiamo la classe Date
per generare un seme e quindi il metodo nextInt()
per generare un numero intero casuale. Vedi l’esempio sotto.
import java.security.SecureRandom;
import java.util.Date;
public class SimpleTesting {
public static void main(String[] args) {
int min_val = 10;
int max_val = 100;
SecureRandom rand = new SecureRandom();
rand.setSeed(new Date().getTime());
int randomNum = rand.nextInt((max_val - min_val) + 1) + min_val;
System.out.println(randomNum);
}
}
Produzione:
65
Genera numero casuale utilizzando la classe RandomUtils
in Java
Possiamo usare la classe RandomUtil
della libreria apache commons per generare numeri interi casuali. Il metodo nextInt()
di questa classe restituisce una classe intera. Vedi l’esempio sotto.
import org.apache.commons.lang3.RandomUtils;
public class SimpleTesting {
public static void main(String[] args) {
int min_val = 10;
int max_val = 100;
RandomUtils random = new RandomUtils();
int randomNum = random.nextInt(min_val, max_val);
System.out.println(randomNum);
}
}
Produzione:
66
Articolo correlato - Java Math
- Modulo in Java
- Frazioni in Java
- Calcola la potenza dei numeri interi in Java
- Sequenza di Fibonacci ricorsiva in Java
- Esponenziazione in Java