Icono play
Java
Bucle ForEach

Las estructuras de control en programación son de gran utilidad, nos permiten manipular la funcionalidad de nuestro proyecto y alterar el flujo normal de nuestro programa según nos convenga.

Dentro de las estructuras de control hay una particularmente interesante: el for each o foreach

El foreach, también conocido como “for extendido” es un bucle constructor al que no necesitamos definir el número de componentes a recorrer como tendríamos que hacerlo con un for normal.

Esta estructura nos permite de forma muy simple recorrer un arrayvector y realizar acciones sobre ellos sin la necesidad de utilizar un iterador o un bucle for clásico.

Esta facilidad de recorrer de manera sencilla una colección de elementos hace del foreach una de las estructuras más utilizadas en Java, ya que generalmente estaremos recorriendo colecciones de objetos.

Sintaxis foreach en Java

La sintaxis de este bucle constructor es simple, primeramente definimos el array, luego la palabra for() y dentro del paréntesis colocamos el tipo de dato (String, int, float, etc.), el nombre de la variable que va a recibir el valor extraído del array, luego (:) y el nombre del array que vamos a iterar y por último abrimos {} y dentro de las llaves escribimos la acción que va a realizarse sobre la variable.

Ejemplo:

int[] numeros = {2,4,6,8,10,12}; //definimos el array

for (int numero: numeros) //tipo de dato, variable receptora, array

{
    System.out.println("el número es " + numero) //acciones a realizarse sobre la variable

}

La salida por pantalla de esta instrucción es:

el número es 2

el número es 4

el número es 6

el número es 8

el número es 10

el número es 12

Bucle For vs Foreach en Java

La diferencia más notable que tiene el foreach respecto del bucle for normal, es la simplicidad del código y la eficiencia para recorrer un array[], ArrayList o List, también tiene algunas desventajas, veamos un poco más en detalle.

Ventajas de Foreach

  • Código más simple y llano.
  • No necesita de una variable iteradora.
  • Recorre las colecciones completas.
  • Puede aplicar acciones sobre cada elemento de la colección.

Desventajas de Foreach

  • No garantiza el orden de acceso a los elementos de la colección que itera.
  • No permite eliminar ningún elemento de la colección iterada.
  • No se pueden modificar los elementos de un array que recorra el foreach.
  • No se puede iterar en múltiples colecciones de forma paralela.

Foreach y Collection en Java

¿Cómo consigue el foreach recorrer una matriz de forma tan sencilla?

Esto se debe a que Java emplea la interfaz genérica “Collection” cuyo propósito es brindar una forma más completa y orientada a objetos de guardar conjuntos de datos similares.

Un conjunto de datos similares es una colección de elementos, estos elementos heredan de la interfaz “Collection” que a su vez hereda de la interfaz “Iterable” que es la desarrollada específicamente para recorrer conjuntos de datos de manera simple.

¿Todavía no te has apuntado a nuestro Bootcamp?
Tenemos muchos cursos para ofrecerte y ¡TOTALMENTE GRATIS! Estos son algunos de ellos: