Générer un nombre aléatoire dans une plage spécifiée en Java
-
Générer un nombre aléatoire à l’aide de la classe
ThreadLocalRandom
en Java -
Générer un nombre aléatoire à l’aide de la classe
Math
en Java -
Générer un nombre aléatoire à l’aide de la classe
Random
en Java -
Générer un nombre aléatoire à l’aide de la classe
Random
en Java -
Générer un nombre aléatoire en utilisant la classe
Random
etIntStream
en Java -
Générer un nombre aléatoire en utilisant la méthode
nextFloat
en Java -
Générer un nombre aléatoire à l’aide de la classe
RandomData
en Java -
Générer un nombre aléatoire en utilisant la classe
SecureRandom
en Java -
Générer un nombre aléatoire à l’aide de la classe
RandomUtils
en Java
Ce didacticiel explique comment générer un nombre aléatoire dans une plage spécifiée en Java.
Il existe plusieurs manières de générer un nombre aléatoire en Java, comme la méthode nextInt()
de la classe ThreadLocalRandom
, la méthode random()
de la classe Math
, la méthode nextInt()
du Classe Random
, la méthode ints()
de la classe Random
, la méthode nextFloat()
de la classe Random
et la classe RandomUtil
, etc.
Générer un nombre aléatoire à l’aide de la classe ThreadLocalRandom
en Java
Le package concurrent Java fournit une classe ThreadLocalRandom
qui a la méthode nextInt()
. Cette méthode peut générer un entier aléatoire dans la plage spécifiée. Voir l’exemple ci-dessous.
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);
}
}
Production:
Value in double: 12.9
Value in int: 12
Générer un nombre aléatoire à l’aide de la classe Math
en Java
La classe Java Math
peut être utilisée pour générer un nombre aléatoire dans la plage spécifiée. Ici, nous utilisons la méthode random()
de la classe Math
pour obtenir un nombre aléatoire. Voir l’exemple ci-dessous.
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);
}
}
Production:
Id: 1212
Name: Samre
Générer un nombre aléatoire à l’aide de la classe Random
en Java
La classe Random
de Java peut générer un entier aléatoire dans la plage spécifiée en utilisant la méthode nextInt()
, qui renvoie une valeur entière. Voir l’exemple ci-dessous.
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);
}
}
Production:
Id: 1212
Name: Samre
Générer un nombre aléatoire à l’aide de la classe Random
en Java
C’est une autre solution pour obtenir un entier aléatoire dans la plage spécifiée. Ici, nous utilisons la méthode nextInt()
de la classe Random
avec différents paramètres. Voir l’exemple ci-dessous.
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);
}
}
Production:
Random Number: 75
Générer un nombre aléatoire en utilisant la classe Random
et IntStream
en Java
Ici, nous utilisons la méthode ints()
de la classe Random
qui renvoie un flux de nombres aléatoires. Nous utilisons la méthode forEach()
pour afficher tous les nombres entiers aléatoires générés par la méthode ints()
. Voir l’exemple ci-dessous.
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);
}
}
Production:
94
35
90
74
47
Générer un nombre aléatoire en utilisant la méthode nextFloat
en Java
La classe Random
fournit une méthode nextFloat()
pour générer un nombre aléatoire de type float. Si nous voulons obtenir un nombre aléatoire de type flottant, cette méthode est utile. Voir l’exemple ci-dessous.
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);
}
}
Production:
71.88764
Générer un nombre aléatoire à l’aide de la classe RandomData
en Java
Si vous travaillez avec la bibliothèque apache commons, utilisez la classe RandomData
. Cette classe fournit une méthode nextInt()
qui renvoie une valeur entière. Nous pouvons utiliser cette méthode pour générer des entiers aléatoires dans la plage spécifiée. Voir l’exemple ci-dessous.
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);
}
}
Production:
72
Générer un nombre aléatoire en utilisant la classe SecureRandom
en Java
La classe SecureRandom appartient au package security
de Java qui permet de créer un nombre aléatoire sécurisé. Ici, nous utilisons la classe Date
pour générer une graine puis la méthode nextInt()
pour générer un entier aléatoire. Voir l’exemple ci-dessous.
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);
}
}
Production:
65
Générer un nombre aléatoire à l’aide de la classe RandomUtils
en Java
Nous pouvons utiliser la classe RandomUtil
de la bibliothèque apache commons pour générer des entiers aléatoires. La méthode nextInt()
de cette classe retourne une classe entière. Voir l’exemple ci-dessous.
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);
}
}
Production:
66
Article connexe - Java Math
- Évaluer une expression mathématique en Java
- Calculer la distance euclidienne en Java
- Calculer la distance entre deux points en Java
- Simplifier ou réduire les fractions en Java
- Mod de nombres négatifs en Java
- Méthode pour calculer la factorielle en Java