Cómo iterar matrices con “foreach”
Quisiera saber como iterar cómodamente matrices con la sentencia de control foreach existente a partir del JDK 5.0
Respuesta
Esta es la sintaxis de la forma habitual de recorrer una matriz con la sentencia de control for
for (inicialización; condición; iteración) {
cuerpo
}
|
- inicialización
- es una expresión que asigna un valor a la variable de control del bucle, que actúa como contador para controlar el bucle
- condición
- debe ser una expresión booleana
- si la expresión es verdadera, entonces se ejecuta el cuerpo del bucle
- si la expresión es falsa, el bucle termina
- iteración
- suele ser una expresión que incrementa o decrementa la variable de control del bucle.
Este código nos muestra cómo popdemos recorrer los meses del año que están insertados en una matriz con la sentencia de control for
package paqforeach;
public class IteracionMatrizMesesBucleFor {
public IteracionMatrizMesesBucleFor() {
String[] matrizMesesAño = {"Enero", "Febrero", "Marzo", "Abril",
"Mayo", "Junio", "Julio", "Agosto",
"Septiembre", "Octubre", "Noviembre", "Diciembre"};
System.out.println("Recorrido de todos los meses del año:");
iterarMatrizBucleFor(matrizMesesAño);
}
public static void main(String[] args) {
new IteracionMatrizMesesBucleFor();
}
private void iterarMatrizBucleFor(String[] matriz) {
for (int i = 0; i < matriz.length; i++) {
System.out.println(matriz[i]);
}
}
} |
Esta es la salida realizada por nuestro código
Ahora vamos a ver cómo podemos obtener el mismo resultando utilizando la sentencia de control foreach
Esta es la sintaxis para recorrer una matriz con la sentencia de control foreach
for (String str1 : matriz) {
cuerpo
}
|
- for (String str1 : matriz) {
- esta línea la podemos leer de la siguiente forma
- para cada String en matriz
- for lo sustituimos por para cada
- los dos puntos ":" los sustituimos por en
Este código nos muestra cómo podemos recorrer los meses del año que están insertados en una matriz con la sentencia de control foreach
package paqforeach;
public class IteracionMatrizMesesBucleForeach {
public IteracionMatrizMesesBucleForeach() {
String[] matrizMesesAño = {"Enero", "Febrero", "Marzo", "Abril",
"Mayo", "Junio", "Julio", "Agosto",
"Septiembre", "Octubre", "Noviembre", "Diciembre"};
iterarMatrizBucleForeach(matrizMesesAño);
}
public static void main(String[] args) {
new IteracionMatrizMesesBucleForeach();
}
private void iterarMatrizBucleForeach(String[] matriz) {
for (String str1 : matriz) {
System.out.println(str1);
}
}
} |
Ignasi Pérez Valls
asesor-formador independiente
ignasiperez[ARROBA]javadabbadoo[PUNTO]org