Volver a Java Básico

Introducción

Los bucles te permiten repetir bloques de código de manera eficiente. En este capítulo aprenderás a usar los bucles for, while y do-while correctamente con ejemplos y buenas prácticas.

Bucle For

El bucle for es ideal para contar o recorrer arrays cuando sabes cuántas iteraciones necesitas.

// FOR: ideal para contar o recorrer arreglos for (int i = 0; i < 5; i++) { System.out.println("Iteración #" + i); }

Sintaxis:

  • Inicialización: int i = 0
  • Condición: i < 5
  • Incremento: i++

Bucle While

El bucle while se usa cuando no sabes cuántas veces se repetirá. Verifica la condición antes de ejecutar.

// WHILE: se usa cuando no sabes cuántas veces se repetirá int contador = 0; while (contador < 3) { System.out.println("Contador: " + contador); contador++; }

Bucle Do-While

El bucle do-while ejecuta al menos una vez antes de verificar la condición.

// DO-WHILE: ejecuta al menos una vez int opcion; do { opcion = obtenerOpcionUsuario(); System.out.println("Elegiste: " + opcion); } while (opcion != 0);

Bucles y Funciones

Puedes combinar bucles con funciones para crear lógica reutilizable:

// FUNCIONES Y REPETICIONES public static int sumaHasta(int limite) { int suma = 0; for (int i = 1; i <= limite; i++) { suma += i; } return suma; } int resultado = sumaHasta(10); // Resultado: 55 System.out.println("La suma de 1 a 10 es: " + resultado);

Buenas Prácticas

  • Usa for cuando conoces el número de iteraciones
  • Usa while cuando el número de iteraciones es desconocido
  • Usa do-while cuando necesitas al menos una ejecución
  • Evita bucles infinitos asegurando que la condición eventualmente sea falsa
  • Usa break para salir de un bucle anticipadamente cuando sea necesario
  • Usa continue para saltar a la siguiente iteración

Malas Prácticas Comunes

  • Crear bucles infinitos accidentalmente al olvidar actualizar la variable del bucle
  • Modificar la variable del bucle dentro del cuerpo de manera inesperada
  • Usar condiciones complejas difíciles de entender
  • No considerar casos extremos (arrays vacíos, cero iteraciones)

Ejemplos Prácticos

Suma de elementos de un array:

int[] numeros = {1, 2, 3, 4, 5}; int suma = 0; for (int num : numeros) { suma += num; } System.out.println("Suma: " + suma); // Suma: 15

Encontrar primer número par:

int[] numeros = {1, 3, 5, 8, 9}; for (int num : numeros) { if (num % 2 == 0) { System.out.println("Primer par: " + num); break; } }

Saltar números negativos:

int[] numeros = {-2, 3, -1, 5, -3, 7}; for (int num : numeros) { if (num < 0) continue; System.out.println("Positivo: " + num); }

Conclusión

Los bucles son esenciales para automatizar tareas repetitivas. Elegir el tipo correcto de bucle y usarlo apropiadamente hará tu código más eficiente y legible.

En el próximo capítulo, aprenderemos sobre HashMap y cómo trabajar con estructuras de datos clave-valor.