Java Iterator-interface
Java Iterator-interface
In deze zelfstudie leren we over de Java Iterator-interface aan de hand van een voorbeeld.
De Iterator
interface van het Java-verzamelingsraamwerk stelt ons in staat om toegang te krijgen tot elementen van een verzameling. Het heeft een subinterface ListIterator
.
Alle Java-collecties bevatten een iterator()
methode. Deze methode retourneert een instantie van iterator die wordt gebruikt om elementen van verzamelingen te herhalen.
Methoden van Iterator
De Iterator
interface biedt 4 methoden die kunnen worden gebruikt om verschillende bewerkingen uit te voeren op elementen van verzamelingen.
hasNext()
- retourneerttrue
als er een element in de collectie bestaatnext()
- geeft het volgende element van de verzameling terugremove()
- verwijdert het laatste element geretourneerd door denext()
forEachRemaining()
- voert de opgegeven actie uit voor elk overblijvend element van de verzameling
Voorbeeld:implementatie van Iterator
In het onderstaande voorbeeld hebben we de hasNext()
. geïmplementeerd , next(),
remove()
en forEachRemining()
methoden van de Iterator
interface in een arraylijst.
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 + ", "));
}
}
}
Uitvoer
ArrayList: [1, 3, 2] Acessed Element: 1 Removed Element: 1 Updated ArrayList: 3, 2,
Let in het bovenstaande voorbeeld op de uitspraak:
iterate.forEachRemaining((value) -> System.put.print(value + ", "));
Hier hebben we de lambda-expressie doorgegeven als argument van de forEachRemaining()
methode.
Nu zal de methode alle resterende elementen van de arraylijst afdrukken.
Java