¿Qué son los bucles?

Los bucles son estructuras de control repetitivas, nos permiten ejecutar un bloque de código hasta que la condición se cumpla o deje de cumplirse. Sirven para automatizar tareas repetitivas, ahorrar código y hacer que los programas sean más limpios y fáciles de mantener.

En java existen tres bucles principales y uno de apoyo para iterar sobre arreglos o listas de forma simple, sin tener que acceder a través de índices.

▲

Advertencia

Si la condición de salida nunca llega a cumplirse (por ejemplo, al olvidar actulizar la variable de control o un contador centinela) el bucle se tornará infinito. Esto causa que el programa ejecute el código de forma "infinita" hasta que se consuma la memoria o se llegue a congelar el sistema. Por fornuta, en Netbeans, cuando hay un bucle infinito, el programa se cerrará para evitar que el sistema se cuelgue.

Bucle: for

En Java, el bucle for es una estructura de control iterativa que se utiliza para repetir un bloque de código un número conocido de veces. Es ideal cuando sabes la cantidad de veces que se debe ejecutar una acción.

La gran ventaja que tiene este bucle, es que nos permite agrupar la declaración de variable, la condición de freno y el incremento en una sola línea.

Sintaxis

Se compone de tres partes fundamentales separadas por puntos y comas (;)

for(inicializacion; condicion; actualizacion){
	// Código que se ejecuta en cada vuelta
}
Inicialización:
Se ejecuta una sola vez al arrancar. Aquí se declara la variable de control y se le asigna su valor de inicio.
Condición:
Se evalúa antes de cada vuelta. Si es verdadera, el código dentro del bucle se ejecuta. Si es falsa, el bucle termina.
Actualización:
Se ejecuta al final de cada vuelta. Modifica el cotandor para avanzar al final del bucle.
i

Información

Aquí se suelen usar los operadores ++ y --.

Son los operadores de incremento y decremento, suman o restan en uno a la variable.

Bucle: while

El bucle while, es una estructura de control que repite un bloque de código mientras una condición específica es verdadera.

A diferencia del bucle for, donde sabemos de antemano cuántas vueltas dará el programa, el while se utiliza cuando no se conoce el número exacto de repeticiones, ya que el ciclo depende de un factor externo que puede cambiar en cualquier momento.

i

Información

Este bucle se utiliza en la lectura de archivos, control de respuestas de usuario, aplicaciones gráficas, búsquedas, etc.

Sintaxis

La estructura es directa y tiene similitud con el condicional if, pero con la capacidad de repertir un bloque de código.

while(condición){
	// Código que se repite
}
Condición:
Aquí se especifica la condición que al ser verdadera, permitirá que el bucle siga ejecutando el bloque de código.
▲

Advertencia

Dentro del bloque de código se debe realizar el control para que la condición falle eventualmente, caso contrario, se tendría el mismo inconveniente de bucle "infinito".

Bucle: do-while

El bucle do-while es una estructura de control que ejecuta un bloque de código al menos una vez, y luego lo repite mientras se cumpla una condición específica.

A diferencia de los bucles for y while, que evalúan la condición al principio, el do-while la evalúa al final de cada vuelta. Esto causa que las instrucciones de su interior corran de forma obligatoria la primera vez, sin importar si la condición es verdadera o falsa en ese momento.

Sintaxis

Su escritura refleja exactamente su comportamiento de "actúa primero, pregunta después".

do{
	// Código que se repite
}while(condicion);
Condición:
Aquí se especifica la condición que se comprobará primeramente después de que el código se ejecuta al menos una vez, luego, después de cada iteración.
▲

Advertencia

A diferencia de los bucles anteriores, el bucle do-while debe finalizar usando ;.

Bucle: foreach

El bucle foreach o for-each, es una estructura de control diseñada exclusivamente para recorrer arreglos (arrays) o colecciones de datos de principio a fin, elemento por elemento, de forma automática.

A diferencia del for clásico, no utiliza un contador, ni requiere que calcules el tamaño de la lista, ni te pide que accedas manualmente a las posiciones. Java se encarga de todo el trabajo, eliminando los riesgos de error al calcular los límites de la lista.

Sintaxis

Su escritura es sumamente limpia y se lee de forma muy natural.

for (tipo elemento : coleccion){
	// código que usa la variable elemento
}
Tipo:
El tipo de dato que corresponde a la colección (por ejemplo, int, String, duble).
Elemento:
Es una variable temporal que tú inventas. En cada vuelta del bucle, tomará automáticamente el valor del elemento actual de la lista.
":":
Se lee literalmente como "en" o "dentro de".
Colección:
El arreglo o la lista por la que deseas iterar.