Interface Java Iterator

le Iterator L’interface du framework de collections Java nous permet d’accéder aux éléments d’une collection. Il a une sous-interface ListIterator .

The Listiterator interface extends the Java Iterator interface.

Toutes les collections Java incluent un iterator() méthode. Cette méthode retourne une instance d’itérateur utilisée pour itérer sur des éléments de collections.


Méthodes d’itérateur

le Iterator interface fournit 4 méthodes qui peuvent être utilisées pour effectuer diverses opérations sur des éléments de collections.

  •  hasNext() – Retour true s’il existe un élément dans la collection
  •  next() – renvoie l’élément suivant de la collection
  •  remove() – supprime le dernier élément renvoyé par le next() 
  •  forEachRemaining() – exécute l’action spécifiée pour chaque élément restant de la collection

Exemple: implémentation d’itérateur

Dans l’exemple ci-dessous, nous avons implémenté le hasNext() ,  next(),   remove() et forEachRemining() méthodes de la Iterator interface dans une liste de tableaux.

 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 + ", "));
        }
    }
}
 

Production

ArrayList: [1, 3, 2]
Élément acquis: 1
Élément supprimé: 1
ArrayList mis à jour: 3, 2,

Dans l’exemple ci-dessus, notez l’instruction:

 iterate.forEachRemaining((value) -> System.put.print(value + ", "));
 

Ici, nous avons passé l’expression lambda comme argument du forEachRemaining()