CodeGym /Blog Java /Random-FR /Méthode Java Random nextInt()
Auteur
Jesse Haniel
Lead Software Architect at Tribunal de Justiça da Paraíba

Méthode Java Random nextInt()

Publié dans le groupe Random-FR
Il existe plusieurs options pour créer un générateur de nombres pseudo-aléatoires en langage Java. L'une de ces options est l'utilisation de la classe java.util.Random et de la méthode nextInt() . Dans cet article, nous allons parler de la méthode Random nextInt() et donner quelques exemples de code de son utilisation.

En bref sur la classe java.util.Random

La classe java.util.Random , comme nous l'avons dit, est un générateur de nombres pseudo-aléatoires. La classe est représentée par deux constructeurs
  • Random() — crée un générateur de nombres en utilisant une graine unique

  • Aléatoire (graine longue) - vous permet de spécifier la graine manuellement

Étant donné que la classe crée un nombre pseudo-aléatoire, en spécifiant une graine, vous déterminez le point de départ de la séquence aléatoire. Et vous obtiendrez les mêmes séquences aléatoires. Pour éviter une telle correspondance, il est courant d'utiliser un deuxième constructeur utilisant l'heure actuelle comme valeur initiale.

Méthode aléatoire nextInt()

Il existe deux options Méthode java.util.Random.nextInt()
  • int nextInt(int n) — renvoie la prochaine valeur aléatoire de type int dans la plage de 0 à n. La méthode lève IllegalArgumentException , si n n'est pas positif.

  • int nextInt() — renvoie la prochaine valeur int aléatoire

Exemple de code de méthode aléatoire nextInt()

Essayons les deux variantes de la méthode java.util.Random.nextInt() avec des exemples de code. Voici un exemple de méthode nextInt() sans arguments :

import java.util.*;
public class RandomTest {
   public static void main(String[] args)
   {
       //creating a Random Object ran
       Random ran = new Random();

       //generating a number using nextInt() method
       int randomNumber = ran.nextInt();

       System.out.println("Randomly generated number = " + randomNumber);
   }
}
La sortie sera… nous ne savons pas avec certitude ! Essayez simplement le code et vous obtiendrez un nombre entier généré aléatoirement. Essayons Random.nextInt() avec un argument. Cependant, cette fois, notre problème sera plus intéressant. Vous avez probablement vu plus d'une fois des publicités de casino en ligne, elles ont littéralement inondé Internet. Ainsi, la séquence du générateur de nombres dans de tels jeux est généralement créée à l'aide de méthodes et de classes comme Random . Créons un programme dans lequel nous lançons deux dés avec un nombre de 1 à 6 écrit de chaque côté.

import java.util.*;
public class RandomTest2 {
   public static void main(String args[])
   {

       // create Random Object
       Random random = new Random();

       // Printing the 6 random numbers between 1 and 6 using //random.nextInt()
       

      for (int i = 1; i < 7; i++) {
          System.out.println("throwing a dice for the " + i + " time");
       System.out.println ("Random number between 1 and 6 is = " + (1 + random.nextInt(6)));
   }
   }
}
Dans ce programme, le joueur "lance" les dés 6 fois de suite. Random.nextInt() détermine le nombre suivant. Voici un des résultats :
lancer un dé pour la 1 fois Le nombre aléatoire entre 1 et 6 est = 5 lancer un dé pour la 2 fois Le nombre aléatoire entre 1 et 6 est = 6 lancer un dé pour la 3 fois Le nombre aléatoire entre 1 et 6 est = 6 lancer un dé pour la 4 fois Le nombre aléatoire entre 1 et 6 est = 5 lancer un dé pour la 5 fois Le nombre aléatoire entre 1 et 6 est = 2 l ancer un dé pour la 6 fois Le nombre aléatoire entre 1 et 6 est = 4
De la même manière, vous pouvez implémenter un jeu de dés pour deux joueurs. Et aussi la loterie, ou la roulette, par exemple. Si vous avez déjà joué à un jeu avec génération de monde procédurale, vous avez maintenant une première idée de son fonctionnement.
Commentaires
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION