Random en Java
Pídele a Java un número al azar en un rango pequeño e imprímelo. En Dice.java importa java.util.Random, conserva la clase pública Dice, crea Random rng = new Random(42);, guarda int roll = rng.nextInt(6) + 1; e imprime roll. Compila con javac Dice.java y ejecuta java Dice. Con el seed 42 la pantalla debe mostrar 3. Un segundo demo imprime dos tiradas del mismo generador y verás 3 y luego 4. Deja Summary para la página siguiente — esta lección son números al azar con seed fijo para practicar, no un cierre del curso.
Construye una tirada con seed
La página de fechas fijó un día del calendario. Esta página pide una tirada. Abre Dice.java. Conserva el nombre de clase pública Dice. Borra demos de fecha Stamp sobrantes si entierran la historia de Random, sumas de formato Yard, archivos de nombres y cualquier Scanner del teclado. El programa no debe esperar que escribas.
Añade el import arriba del archivo:
import java.util.Random;
Dentro de Dice.main crea un generador con seed para que cada ejecución de este archivo didáctico repita el mismo primer valor:
Random rng = new Random(42);
int roll = rng.nextInt(6) + 1;
System.out.println(roll);
nextInt(6) solo devuelve de 0 a 5. Sumar 1 desplaza el rango a 1..6, como un dado de seis caras. El seed 42 no es magia — solo fija la secuencia de esta lección para que el cuestionario y la pantalla coincidan. No adivinas un número nuevo cada vez que lees la página.
import java.util.Random;
public class Dice {
public static void main(String[] args) {
Random rng = new Random(42);
int roll = rng.nextInt(6) + 1;
System.out.println(roll);
}
}
En la carpeta donde está Dice.java ejecuta javac Dice.java. Cuando paréntesis, llaves y punto y coma cuadran, javac no escribe línea propia. Luego java Dice — no java Dice.java. Quita la terminación .java del comando de ejecución. Una sola clase pública en el archivo para que el nombre coincida con Dice.
La pantalla muestra 3. Recorre la ejecución una vez. Java arranca en Dice.main. El constructor guarda el seed 42. La primera llamada a nextInt(6) saca un valor en 0..5; el + 1 lo convierte en 1..6. Con este seed la primera tirada es 3. La impresión escribe 3.
Dite la regla de principiante mientras miras la pantalla: importa Random, crea con seed cuando necesites un demo repetible, llama nextInt(6) + 1 para un rango tipo dado, imprime la tirada. No inventes un capítulo Summary en esta página. Summary espera la lección siguiente. No quites el + 1 si quieres de 1 a 6.
Si aún ves 2026-03-15 de un archivo de fechas Stamp sobrante, pasa al archivo didáctico de Random y vuelve a ejecutar java Dice. Si javac dice que no encuentra Random, revisa la línea de import arriba de Dice.java.
Segunda tirada del mismo generador
Una tirada demuestra el rango. Una segunda llamada sobre el mismo objeto Random continúa la secuencia. Conserva el mismo constructor con seed. Imprime dos tiradas:
System.out.println(rng.nextInt(6) + 1);
System.out.println(rng.nextInt(6) + 1);
Con seed 42 la primera impresión sigue siendo 3. La segunda es 4. Ambos valores quedan en 1..6. El generador recuerda su posición; no reconstruyas new Random(42) entre esas dos líneas si quieres el siguiente valor de la misma secuencia.
import java.util.Random;
public class Dice {
public static void main(String[] args) {
Random rng = new Random(42);
System.out.println(rng.nextInt(6) + 1);
System.out.println(rng.nextInt(6) + 1);
}
}
Compila con javac Dice.java y ejecuta java Dice otra vez. La pantalla muestra 3 y luego 4. Recorre la ejecución una vez. El mismo seed inicia la secuencia. El primer nextInt(6) + 1 imprime 3. La segunda llamada avanza e imprime 4. Nada espera al teclado. Nada guarda un día del calendario.
Conserva los dos demos como dos formas didácticas. Primero demuestra una tirada con seed. Luego dos tiradas seguidas. Comparten el mismo import y el mismo seed. La segunda forma solo añade otra llamada a nextInt.
Si reconstruyes new Random(42) antes de cada impresión, cada línea reinicia la secuencia y puedes ver 3 dos veces. Es otro hábito. Esta página mantiene un generador para el demo de dos tiradas para que la segunda línea avance.
Random no es calendario ni Summary
Las fechas guardaban un día fijo para imprimir y desglosar. Random saca números al azar en un rango. Summary cerrará el recorrido del curso en la página siguiente. No mezcles hoy esas tres tareas en un archivo de principiante.
Sin seed cada ejecución puede mostrar una primera tirada distinta. Para juegos más adelante está bien. Esta lección usa el seed 42 para que pantalla didáctica y cuestionario compartan una respuesta. Aprendes la misma llamada a nextInt de cualquier modo.
Si falta el import, javac falla antes de cualquier línea en pantalla. Si olvidas el + 1, puede aparecer 0, que no es una cara estándar del dado. Conserva el import, conserva el desplazamiento y ejecuta java Dice hasta que el demo de una tirada muestre 3 o el de dos muestre 3 y luego 4.
Si demos de fechas siguen cerca, déjalos como historial. Para esta lección ejecuta el archivo didáctico de Random para que la pantalla muestre números al azar en rango, no 2026-03-15. Si javac se queja de clases públicas duplicadas, deja solo Dice como pública.
Rango, seed y el hábito del + 1
nextInt(6) significa seis valores iniciales posibles: 0, 1, 2, 3, 4 y 5. La expresión nextInt(6) + 1 los mapea a 1, 2, 3, 4, 5 y 6. Di ese mapeo en voz alta una vez mientras miras el código. El argumento límite es el recuento de valores iniciales, no la cara más alta tras el desplazamiento.
El seed fija qué camino por esas caras ves primero en este archivo didáctico. Cambiar el seed cambia la secuencia. Quitar el seed la cambia entre ejecuciones. Para la práctica evaluada de esta página conserva 42 para que la primera cara siga siendo 3.
No trates Random como sustituto de LocalDate. Una tirada no es una regla de sangría de formato. Cada página anterior guardó su propio trabajo. Esta página guarda solo números al azar.
Antes de Summary
Puedes importar Random, crear new Random(42), lanzar nextInt(6) + 1, ver 3 en una ejecución y 3 luego 4 en el demo de dos tiradas. Compila Dice.java y ejecuta java Dice para los demos que conservas. El rango siguió siendo 1..6; el seed mantuvo la secuencia estable para enseñar. La página siguiente es Summary, donde miras atrás en el camino Java.
Conserva los demos de dado con seed para un par claro de números al azar. Mantén archivos de fechas fuera de esta página cuando practiques Random. Mantén archivos Summary fuera hasta esa lección. Esos tres hábitos son el punto de control antes de seguir. Cuando la pantalla de una tirada muestre 3 o la de dos muestre 3 y luego 4, Random cumplió su papel en esta lección y estás listo para el tema Summary.
Un último repaso de la carpeta: una Dice pública, import presente, new Random(42), nextInt(6) + 1, sin espera de teclado, sin tipos de calendario forzados. Ejecuta javac Dice.java y java Dice una vez más en el demo que tengas abierto. Si la pantalla sigue en 3 o 3 y luego 4, la forma Random está sólida y el curso puede pasar a Summary en la página siguiente. Prefiere un hábito claro del azar en cada lectura para que cada paso enseñe el mismo mapa.
🧠 Pon a Prueba tu Conocimiento
Pon a Prueba tu Conocimiento
Ponte a prueba con este cuestionario interactivo y descubre qué tan bien entiendes el tema
📝 Instrucciones
- Lee cada pregunta cuidadosamente
- Selecciona la mejor respuesta para cada pregunta
- Puedes repetir el quiz tantas veces como quieras
- Tu progreso se mostrará en la parte superior