Ir al contenido

Recorrer

Existen diversas formas de recorrer los elementos de un ArrayList, dependiendo del estilo de programación y las necesidades del problema. A continuación se presentan los tres enfoques más comunes en Java:


Este método permite acceder a los elementos mediante sus índices. Es útil cuando se requiere conocer o manipular la posición de cada elemento.

ArrayList<String> nombres = new ArrayList<>();
nombres.add("Ana");
nombres.add("Luis");
for (int i = 0; i < nombres.size(); i++) {
System.out.println(nombres.get(i));
}
  • Acceso explícito al índice.

  • Permite modificar elementos con set(i, nuevoValor) si es necesario.


El bucle for-each es una forma más legible y segura para recorrer colecciones cuando no se necesita el índice.

for (String nombre : nombres) {
System.out.println(nombre);
}
  • No permite acceder directamente al índice.

  • Recomendado cuando se desea simplemente leer o procesar cada elemento.


Recorrido con forEach() y expresiones lambda

Sección titulada «Recorrido con forEach() y expresiones lambda»

Desde Java 8, ArrayList (como toda clase que implementa la interfaz Iterable) permite recorrer sus elementos utilizando expresiones lambda con el método forEach.

nombres.forEach(nombre -> System.out.println(nombre));
  • Estilo funcional, más moderno y conciso.

  • Útil para aplicar operaciones complejas sin necesidad de estructuras externas.

También se puede usar con referencias a métodos:

nombres.forEach(System.out::println);

  • El recorrido con índice (for clásico) es el único que permite modificar elementos en una posición específica.

  • El uso de for-each y forEach() promueve un estilo más limpio y expresivo, especialmente en operaciones de lectura.

  • Se debe evitar modificar la estructura del ArrayList (agregar o eliminar elementos) durante un bucle for-each o forEach(), ya que puede generar excepciones (ConcurrentModificationException).