English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
En este tutorial, aprenderemos el interfaz Iterator de Java a través de un ejemplo.
La interfaz Iterator del framework de colecciones de Java nos permite acceder a los elementos de la colección. Tiene una subinterfaz ListIterator.
Todos los conjuntos de Java contienen un método iterator(). Este método devuelve una instancia de iterador utilizada para iterar sobre los elementos de la colección.
La interfaz Iterator proporciona4Este método, que se puede usar para realizar varias operaciones en los elementos de la colección.
hasNext() - Devolver true si existe un elemento en la colección
next() - Devolver el siguiente elemento de la colección
remove() -Eliminar el último elemento devuelto por next()
forEachRemaining() - Ejecutar la operación específica para cada elemento restante de la colección
En el siguiente ejemplo, hemos implementado los métodos hasNext(), next(), remove() y forEachRemaining() de la interfaz Iterator en una lista de array.
import java.util.ArrayList; import java.util.Iterator; class Main { public static void main(String[] args) { //Creación de una ArrayList ArrayList<Integer> numbers = new ArrayList<>(); numbers.add(1); numbers.add(3); numbers.add(2); System.out.println("ArrayList: "} + numbers); //Creación de una instancia de Iterator Iterator<Integer> iterate = numbers.iterator(); //Uso del método next() int number = iterate.next(); System.out.println("Acceder al elemento: "} + number); //Usando el método remove() iterate.remove(); System.out.println("Eliminar elemento: "); + number); System.out.print("ArrayList actualizada: "); //Usando el método hasNext() while (iterate.hasNext()) { //Usando el método forEachRemaining() iterate.forEachRemaining((value -> System.out.print(value + ", ")); } } }
Resultados de salida
ArrayList: [1, 3, 2] Acceder al elemento: 1 Eliminar elemento: 1 ArrayList actualizada: 3, 2,
En el ejemplo anterior, note las siguientes declaraciones:
iterate.forEachRemaining((value -> System.put.print(value + ", "));
Aquí, haremosexpresión lambdacomo parámetro para el método forEachRemaining().
Ahora, este método imprimirá todos los elementos restantes de la lista de arrays.