Java Iterator-interface: Praktische gids met codevoorbeelden
Java Iterator-interface
Ontdek hoe de Iterator-interface je laat navigeren en manipuleren Java-collecties efficiënt. Een hands-on voorbeeld demonstreert elke methode in actie.
De Iterator-interface, onderdeel van Java's Collections Framework, biedt een uniforme manier om elke collectie te doorlopen. Het wordt uitgebreid door ListIterator voor lijsten.
Elke collectieklasse biedt een iterator()-methode die een Iterator-instantie retourneert, wat veilige doorloop en manipulatie mogelijk maakt.
Iterator-methoden
De interface definieert vier kernmethoden:
hasNext()– retourneerttrueals er nog elementen zijnnext()– haalt het volgende element opremove()– verwijdert het laatste element dat doornext()werd geretourneerdforEachRemaining()– past een gegeven actie toe op alle overgebleven elementen
Voorbeeld: Iterator met ArrayList gebruiken
Het volgende snippet implementeert alle vier methoden op een ArrayList<Integer>:
import java.util.ArrayList;
import java.util.Iterator;
class Main {
public static void main(String[] args) {
// Maak een ArrayList
ArrayList<Integer> getallen = new ArrayList<>();
getallen.add(1);
getallen.add(3);
getallen.add(2);
System.out.println("ArrayList: " + getallen);
// Verkrijg een Iterator
Iterator<Integer> iterator = getallen.iterator();
// Benader het eerste element
int getal = iterator.next();
System.out.println("Benaderd element: " + getal);
// Verwijder dat element
iterator.remove();
System.out.println("Verwijderd element: " + getal);
System.out.print("Bijgewerkte ArrayList: ");
// Itereer over overgebleven elementen
while (iterator.hasNext()) {
iterator.forEachRemaining(waarde -> System.out.print(waarde + ", "));
}
}
}
Output
ArrayList: [1, 3, 2] Benaderd element: 1 Verwijderd element: 1 Bijgewerkte ArrayList: 3, 2,
forEachRemaining() wordt doorgegeven, demonstreert hoe de methode elk overgebleven element beknopt verwerkt.
Java
- Java-methodes: definiëren, aanroepen en effectief gebruiken
- Java recursie: begrip, voorbeelden en afwegingen
- Java interfaces meesteren: concepten, implementatie en best practices
- Java Annotatie typen: uitgebreide gids over voorgedefinieerde, aangepaste en meta annotaties
- Java NavigableSet interface: Navigatie, sortering en praktische voorbeelden
- Java Lambda-expressies: Van basis tot Stream API
- Java String.charAt() begrijpen: Syntaxis, Retourtype, Exceptions en Praktisch Voorbeeld
- Java Method Overriding: Superclass-gedrag aanpassen
- Java Interfaces begrijpen: Definities, Gebruik en Best Practices
- Java 9 Private Interface Methods: Encapsulatie & herbruik verbeteren
- Java 8 Method References: Uitgebreide gids