En este tutorial, aprenderemos sobre la interfaz Java Iterator con la ayuda de un ejemplo.
La Iterator
interfaz del framework de colecciones de Java nos permite acceder a elementos de una colección. Tiene una subinterfaz ListIterator
.
Todas las colecciones de Java incluyen un iterator()
método. Este método devuelve una instancia de iterador que se usa para iterar sobre elementos de colecciones.
Métodos de iterador
La Iterator
interfaz proporciona 4 métodos que se pueden utilizar para realizar diversas operaciones en elementos de colecciones.
hasNext()
- devuelvetrue
si existe un elemento en la colecciónnext()
- devuelve el siguiente elemento de la colecciónremove()
- elimina el último elemento devuelto por elnext()
forEachRemaining()
- realiza la acción especificada para cada elemento restante de la colección
Ejemplo: implementación de iterador
En el siguiente ejemplo, hemos implementado los métodos hasNext()
, next(),
remove()
y forEachRemining()
de la Iterator
interfaz en una lista de arreglos.
import java.util.ArrayList; import java.util.Iterator; class Main ( public static void main(String() args) ( // Creating an ArrayList ArrayList numbers = new ArrayList(); numbers.add(1); numbers.add(3); numbers.add(2); System.out.println("ArrayList: " + numbers); // Creating an instance of Iterator Iterator iterate = numbers.iterator(); // Using the next() method int number = iterate.next(); System.out.println("Accessed Element: " + number); // Using the remove() method iterate.remove(); System.out.println("Removed Element: " + number); System.out.print("Updated ArrayList: "); // Using the hasNext() method while(iterate.hasNext()) ( // Using the forEachRemaining() method iterate.forEachRemaining((value) -> System.out.print(value + ", ")); ) ) )
Salida
ArrayList: (1, 3, 2) Elemento accedido: 1 Elemento eliminado: 1 ArrayList actualizado: 3, 2,
En el ejemplo anterior, observe la declaración:
iterate.forEachRemaining((value) -> System.put.print(value + ", "));
Aquí, hemos pasado la expresión lambda como argumento del forEachRemaining()
método.
Ahora el método imprimirá todos los elementos restantes de la lista de matrices.