Junior
Ce este un iterator și pentru ce este necesar?
sobes.tech AI
Răspuns de la AI
Un iterator în Java este un obiect care permite parcurgerea secvențială a elementelor unei colecții fără a fi nevoie să cunoașteți structura internă a acesteia.
Obiectivele principale ale utilizării iteratorului:
- Abstracție: Oferă o metodă unificată de parcurgere a elementelor pentru diferite tipuri de colecții (liste, mulțimi etc.).
- Securitate: Permite eliminarea elementelor din colecție în timpul iterării fără a încălca logica de parcurgere.
- Independență: Parcurgerea elementelor nu depinde de implementarea concretă a colecției.
Interfața Iterator<E> definește trei metode principale:
hasNext(): Returneazătruedacă mai există elemente în iterare.next(): Returnează următorul element în iterare.remove(): Șterge din colecția de bază elementul returnat de ultima apelare anext().
Exemplu de utilizare:
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
// Exemplu de utilizare a iteratorului
public class IteratorExample {
public static void main(String[] args) {
List<String> list = new ArrayList<>();
list.add("Apple");
list.add("Banana");
list.add("Cherry");
Iterator<String> iterator = list.iterator();
// Parcurgerea elementelor cu iteratorul
while (iterator.hasNext()) {
String element = iterator.next();
System.out.println(element);
// Ștergerea unui element în timpul iterării (exemplu)
if (element.equals("Banana")) {
iterator.remove();
}
}
System.out.println("După ștergere: " + list);
}
}