Interfaz de iterador de Java
Interfaz de iterador de Java
En este tutorial, aprenderemos sobre la interfaz Java Iterator con la ayuda de un ejemplo.
El Iterator
La interfaz del marco de colecciones de Java nos permite acceder a los 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 del iterador
El Iterator
La interfaz proporciona 4 métodos que se pueden usar para realizar varias 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 Iterator
En el siguiente ejemplo, hemos implementado el hasNext()
, next(),
remove()
y forEachRemining()
métodos del 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<Integer> numbers = new ArrayList<>();
numbers.add(1);
numbers.add(3);
numbers.add(2);
System.out.println("ArrayList: " + numbers);
// Creating an instance of Iterator
Iterator<Integer> 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] Acessed Element: 1 Removed Element: 1 Updated ArrayList: 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 arreglos.
Java