Itérateur Java

Dans ce tutoriel, nous allons découvrir l'interface Java Iterator à l'aide d'un exemple.

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

Toutes les collections Java incluent une 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

L' Iteratorinterface propose 4 méthodes permettant d'effectuer diverses opérations sur des éléments de collections.

  • hasNext()- retourne trues'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é les méthodes hasNext(), next(), remove()et forEachRemining()de l' Iteratorinterface 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 numbers = new ArrayList(); numbers.add(1); numbers.add(3); numbers.add(2); System.out.println("ArrayList: " + numbers); // Creating an instance of Iterator Iterator 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 de la forEachRemaining()méthode.

Maintenant, la méthode imprimera tous les éléments restants de la liste des tableaux.

Articles intéressants...