CodeGym/Blog Java/Random-ES/Método aleatorio nextInt() de Java
Autor
Jesse Haniel
Lead Software Architect at Tribunal de Justiça da Paraíba

Método aleatorio nextInt() de Java

Publicado en el grupo Random-ES
Hay varias opciones para crear un generador de números pseudoaleatorios en lenguaje Java. Una de estas opciones es el uso de la clase java.util.Random y el método nextInt() . En este artículo, hablaremos sobre el método Random nextInt() y daremos algunos ejemplos de código de su uso.

Brevemente sobre la clase java.util.Random

La clase java.util.Random , como decíamos, es un generador de números pseudoaleatorios. La clase está representada por dos constructores.
  • Random() — crea un generador de números usando una semilla única

  • Aleatorio (semilla larga) : le permite especificar la semilla manualmente

Dado que la clase crea un número pseudoaleatorio, al especificar una semilla, determina el punto de inicio de la secuencia aleatoria. Y obtendrás las mismas secuencias aleatorias. Para evitar tal coincidencia, es común usar un segundo constructor usando la hora actual como valor inicial.

Método aleatorio nextInt()

Hay dos opciones Método java.util.Random.nextInt()
  • int nextInt(int n) — devuelve el siguiente valor aleatorio de tipo int en el rango de 0 a n. El método lanza IllegalArgumentException , si n no es positivo.

  • int nextInt() — devuelve el siguiente valor int aleatorio

Ejemplo de código de método aleatorio nextInt()

Probemos ambas variantes del método java.util.Random.nextInt() con ejemplos de código. Aquí hay un ejemplo del método nextInt() sin argumentos:
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);
   }
}
El resultado será... ¡no lo sabemos con certeza! Simplemente pruebe el código y obtendrá un número entero generado aleatoriamente. Probemos Random.nextInt() con un argumento. Sin embargo, esta vez nuestro problema será más interesante. Probablemente haya visto anuncios de casinos en línea más de una vez, literalmente inundaron Internet. Por lo tanto, la secuencia del generador de números en tales juegos generalmente se crea utilizando métodos y clases como Random . Vamos a crear un programa en el que tiremos dos dados con un número del 1 al 6 escrito en cada lado.
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)));
   }
   }
}
En este programa, el jugador "tira" los dados 6 veces seguidas. Random.nextInt() determina el siguiente número. Este es uno de los resultados:
tirar un dado por 1 vez El número aleatorio entre 1 y 6 es = 5 tirar un dado por segunda vez El número aleatorio entre 1 y 6 es = 6 tirar un dado por 3 vez El número aleatorio entre 1 y 6 es = 6 tirar un dado por cuarta vez El número aleatorio entre 1 y 6 es = 5 tirar un dado por quinta vez El número aleatorio entre 1 y 6 es = 2 tirar un dado por sexta vez El número aleatorio entre 1 y 6 es = 4
De manera similar, puedes implementar un juego de dados para dos jugadores. Y también la lotería, o la ruleta, por ejemplo. Si alguna vez has jugado un juego con generación de mundos procedimentales, ahora tienes una idea inicial de cómo funciona.
Comentarios
  • Populares
  • Nuevas
  • Antiguas
Debes iniciar sesión para dejar un comentario
Esta página aún no tiene comentarios