Lección 4: Repeticiones con while en Java
¿Alguna vez has querido que tu programa haga algo muchas veces sin tener que escribir el mismo código una y otra vez? ¡Para eso existen los ciclos o bucles! El primero que aprenderemos es while
, que se traduce como "mientras".
El ciclo while
es como un robot obediente que, antes de actuar, revisa una condición. Solo si la condición es verdadera, repite la tarea. Es como decir: "Mientras esté lloviendo, mantén el paraguas abierto".
int contador = 1; while (contador <= 5) { System.out.println("Número: " + contador); contador++; // ¡La pieza clave para no crear un bucle infinito! }
¿Cómo funciona paso a paso?
- Java ve
contador = 1
. - Evalúa la condición
while (1 <= 5)
. Es verdadero, así que entra al ciclo. - Imprime "Número: 1".
- La línea
contador++
aumentacontador
a 2. - Vuelve al inicio y repite el proceso hasta que
contador
sea 6. En ese momento, la condición(6 <= 5)
será falsa y el ciclo terminará.

Foto de Katei Nikosai
👑 El Primo del while
: El Bucle do-while
Ahora que conoces al while
, te presento a su primo, el do-while
. La diferencia es sutil pero muy poderosa.
Piensa en un guardia de una discoteca:
while
: Revisa tu ID en la puerta. Si no eres mayor de edad, ni siquiera entras.do-while
: Te deja entrar a la barra, te sirve una bebida, y luego te pide el ID. Ya has ejecutado una acción al menos una vez.
El do-while
siempre se ejecuta al menos una vez, porque la condición se revisa al final.
int opcion; do { System.out.println("--- MENÚ ---"); System.out.println("1. Jugar"); System.out.println("2. Ver Puntuación"); System.out.println("3. Salir"); System.out.print("Elige una opción: "); // Aquí iría el código para leer la opción del usuario opcion = 3; // Simulamos que elige salir } while (opcion != 3); // <-- al="" el="" final="" nota="" span=""> System.out.println("¡Gracias por jugar!"); -->
¡Cuidado con los bucles infinitos! Si olvidas la línea que cambia la condición (como contador++
o leer una nueva opción del usuario), tu programa se quedará atrapado repitiendo lo mismo para siempre.