Maison > Java > javaDidacticiel > Trois façons de générer différents nombres aléatoires en Java

Trois façons de générer différents nombres aléatoires en Java

王林
Libérer: 2020-02-04 16:56:08
original
4164 Les gens l'ont consulté

Trois façons de générer différents nombres aléatoires en Java

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

1, new Random()

2, Math.random()

3. currentTimeMillis()

Le premier type nécessite l'aide de la classe java.util.Random pour générer un générateur de nombres aléatoires, qui est également le plus couramment utilisé. Il existe deux constructeurs, Random(. ) et aléatoire (graine longue). Le premier utilise l’heure actuelle comme valeur de départ par défaut et le second utilise la valeur de départ spécifiée. Après génération, différents types de nombres sont générés à l’aide de différentes instructions.

(Partage de didacticiel vidéo associé : tutoriel vidéo Java)

La graine est la première valeur d'utilisation pour générer un nombre aléatoire. Le mécanisme consiste à utiliser une fonction pour convertir. la graine La valeur est convertie en un certain point dans l'espace des nombres aléatoires et les nombres aléatoires générés sont uniformément répartis dans l'espace. Les nombres aléatoires générés dans le futur sont liés au nombre aléatoire précédent.

Par exemple :

public static void main(String[] args)
{    
  Random r = new Random(1);
  for(int i=0 ; i<5 ;  i++)
  {
    int ran1 = r.nextInt(100);
    System.out.println(ran1);
  }
}
Copier après la connexion

Les cinq nombres générés par mon compilateur sont tous 85,88,47,13,54. Si Random r = new Random() est utilisé, les nombres aléatoires sont. différent, et c'est le résultat de la détermination de la graine.

La valeur renvoyée par la deuxième méthode est une valeur double de [0.0, 1.0). Étant donné que le numéro de classe double a une grande précision, il peut être considéré dans une certaine mesure comme un nombre aléatoire, et le type est déterminé en utilisant (int) Après la conversion, vous pouvez obtenir un nombre aléatoire entier.

Par exemple :

public static void main(String[] args)2     {    
int max=100,min=1;
 int ran2 = (int) (Math.random()*(max-min)+min); 
System.out.println(ran2);6     }
Copier après la connexion

Bien que la troisième méthode ne soit pas couramment utilisée, c'est aussi une idée. La méthode renvoie un long nombre de millisecondes depuis 0:00:00 le 1er janvier 1970 (cela est lié aux systèmes UNIX) jusqu'à aujourd'hui. Après avoir pris le modulo, un nombre aléatoire dans la plage requise peut être obtenu.

Par exemple :

public static void main(String[] args)
    {    
        int max=100,min=1;
        long randomNum = System.currentTimeMillis();  
        int ran3 = (int) (randomNum%(max-min)+min);  
        System.out.println(ran3);
        
    }
Copier après la connexion

Partage de didacticiels d'articles connexes : Tutoriel d'introduction à 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!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
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
Derniers numéros
Impossible d'installer Java
Depuis 1970-01-01 08:00:00
0
0
0
Java peut-il être utilisé comme backend du Web ?
Depuis 1970-01-01 08:00:00
0
0
0
Installer JAVA
Depuis 1970-01-01 08:00:00
0
0
0
Aide : Données chiffrées JAVA Décryptage PHP
Depuis 1970-01-01 08:00:00
0
0
0
Est-ce en langage Java ?
Depuis 1970-01-01 08:00:00
0
0
0
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal