Sobes.tech
Junior

Qu'est-ce qu'un itérateur et à quoi sert-il?

sobes.tech IA

Réponse de l'IA

Un itérateur en Java est un objet qui permet de parcourir séquentiellement les éléments d'une collection sans avoir besoin de connaître sa structure interne.

Les objectifs principaux de l'utilisation de l'itérateur :

  • Abstraction : Fournit une méthode unifiée pour parcourir les éléments de différents types de collections (listes, ensembles, etc.).
  • Sécurité : Permet de supprimer des éléments de la collection pendant l'itération sans violer la logique de parcours.
  • Indépendance : La traversée des éléments ne dépend pas de l'implémentation spécifique de la collection.

L'interface Iterator<E> définit trois méthodes principales :

  • hasNext(): Renvoie true s'il reste encore des éléments à parcourir.
  • next(): Renvoie l'élément suivant dans l'itération.
  • remove(): Supprime de la collection sous-jacente l'élément renvoyé par le dernier appel à next().

Exemple d'utilisation :

import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;

// Exemple d'utilisation de l'itérateur
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();

        // Parcours des éléments avec l'itérateur
        while (iterator.hasNext()) {
            String element = iterator.next();
            System.out.println(element);

            // Suppression d'un élément pendant l'itération (exemple)
            if (element.equals("Banana")) {
                iterator.remove();
            }
        }

        System.out.println("Liste après suppression : " + list);
    }
}