El bucle Java for-each o bucle for mejorado se introduce desde J2SE 5.0. Proporciona un enfoque alternativo para recorrer la matriz o colección en Java. Se utiliza principalmente para atravesar elementos de matriz o colección. La ventaja del bucle for-each es que elimina la posibilidad de errores y hace que el código sea más legible. Se conoce como bucle for-each porque atraviesa cada elemento uno por uno.
El inconveniente del bucle for mejorado es que no puede atravesar los elementos en orden inverso. Aquí, no tiene la opción de omitir ningún elemento porque no funciona según el índice. Además, no se pueden atravesar únicamente los elementos pares o impares.
Sin embargo, se recomienda utilizar el bucle Java for-each para atravesar los elementos de la matriz y la colección porque hace que el código sea legible.
Ventajas
- Hace que el código sea más legible.
- Elimina la posibilidad de errores de programación.
Sintaxis
La sintaxis de Java para cada bucle consta de tipo_datos con la variable seguida de dos puntos (:), luego una matriz o colección.
for(data_type variable : array | collection){ //body of for-each loop }
¿Cómo funciona?
El bucle Java for-each atraviesa la matriz o colección hasta el último elemento. Para cada elemento, almacena el elemento en la variable y ejecuta el cuerpo del bucle for-each.
Ejemplo de bucle para cada uno: atravesar los elementos de la matriz
//An example of Java for-each loop class ForEachExample1{ public static void main(String args[]){ //declaring an array int arr[]={12,13,14,44}; //traversing the array with for-each loop for(int i:arr){ System.out.println(i); } } }Pruébalo ahora
Producción:
12 12 14 44
Veamos otro bucle for-each de Java donde vamos a sumar los elementos.
class ForEachExample1{ public static void main(String args[]){ int arr[]={12,13,14,44}; int total=0; for(int i:arr){ total=total+i; } System.out.println('Total: '+total); } }
Producción:
Total: 83
Ejemplo de bucle para cada uno: atravesar los elementos de la colección
import java.util.*; class ForEachExample2{ public static void main(String args[]){ //Creating a list of elements ArrayList list=new ArrayList(); list.add('vimal'); list.add('sonoo'); list.add('ratan'); //traversing the list of elements using for-each loop for(String s:list){ System.out.println(s); } } }Pruébalo ahora
Producción:
vimal sonoo ratandescarga este ejemplo