Maison >Java >JavaBase >Comment utiliser le nombre aléatoire Java aléatoire

Comment utiliser le nombre aléatoire Java aléatoire

醉折花枝作酒筹
醉折花枝作酒筹original
2021-06-16 14:48:4164795parcourir

En Java, l'utilisation de random est "static double random()". La méthode "random()" est utilisée pour renvoyer un nombre aléatoire. La plage de nombres aléatoires est "0.0=

Comment utiliser le nombre aléatoire Java aléatoire

L'environnement d'exploitation de ce tutoriel : système Windows 7, version Java 10, ordinateur DELL G3.

Il existe plusieurs façons de générer des nombres aléatoires en Java

Java.util.UUID - Générer des chaînes uniques

Des caractères uniques peuvent être générés via la classe UUID String, et est unique au monde, toutes les chaînes générées par les ordinateurs sont différentes. Il est utilisé comme suit :

String uuid  =  UUID.randomUUID().toString();

Math.random()

La méthode Math.random() peut générer des nombres de type double dans l'intervalle [0,1), qui peut être 0, mais moins de 1. Les autres méthodes d'utilisation courantes sont les suivantes :

生成double随机数:Math.random()
生成[0,100)之间的整数:(int)(Math.random()*100)

Entrez le code source de Math.random() et son utilisation spécifique est d'appeler la méthode nextDouble() de Random.

public static double random() {
        return RandomNumberGeneratorHolder.randomNumberGenerator.nextDouble();
}
    
private static final class RandomNumberGeneratorHolder {
   static final Random randomNumberGenerator = new Random();
}

Classe aléatoire

La classe aléatoire génère des nombres aléatoires. Ses principales méthodes sont les suivantes

Comment utiliser le nombre aléatoire Java aléatoire

L'exemple suivant utilise Random pour générer 5. Nombres aléatoires dans [0,100)

Random random = new Random();

//生成5个 0到100之间的数字。
System.out.println("生成5个 0到100之间的数字。 nextInt(100)");
for (int n = 0; n < 5; n++) {
    System.out.print(random.nextInt(100)+", ");
}

Remarques sur l'utilisation de Random

Il existe deux façons pour Random de générer des nombres aléatoires, une sans graines et une avec des graines

Il existe un morceau de code comme celui-ci, qui définit deux nombres aléatoires, définit la même valeur de départ et renvoie un entier aléatoire inférieur à 100. L'ordre des nombres aléatoires générés par les deux Randoms est le même.

Random random = new Random(100);
Random random1 = new Random(100);

//随机生成5个int数字  next()
System.out.println("随机生成5个int数字  next()");
for (int n = 0; n < 5; n++) {
    System.out.println(random.nextInt(100)+" "+random1.nextInt(100));
}

输出的结果如下:
15,15
50,50
74,74
88,88
91,91

Les nombres aléatoires de Random sont en fait des nombres pseudo-aléatoires Tant que la graine est déterminée, la séquence des nombres aléatoires générés est cohérente. Par conséquent, il est évité que les deux instances Random dans l'exemple. générer des nombres aléatoires avec la même séquence. Il existe généralement deux manières de

  • Ne pas spécifier de graine lors de la génération d'une instance aléatoire.

  • Générez une classe Random singleton, puis générez des nombres aléatoires.

Tutoriels vidéo associés recommandés : Tutoriel vidéo Java

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn