Interface Java ListIterator

Table des matières

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

L' ListIteratorinterface du framework de collections Java fournit la fonctionnalité pour accéder aux éléments d'une liste.

C'est bidirectionnel. Cela signifie qu'il nous permet d'itérer des éléments d'une liste dans les deux sens.

Il étend l' Iteratorinterface.

L' Listinterface fournit une listIterator()méthode qui renvoie une instance de l' ListIteratorinterface.

Méthodes de ListIterator

L' ListIteratorinterface fournit des méthodes qui peuvent être utilisées pour effectuer diverses opérations sur les éléments d'une liste.

  • hasNext() - renvoie true s'il existe un élément dans la liste
  • next() - renvoie l'élément suivant de la liste
  • nextIndex()renvoie l'index de l'élément que la next()méthode retournera
  • previous() - renvoie l'élément précédent de la liste
  • previousIndex()- renvoie l'index de l'élément que la previous()méthode retournera
  • remove()- supprime l'élément renvoyé par next()ouprevious()
  • set()- remplace l'élément retourné par l'un next()ou l' autre previous()par l'élément spécifié

Exemple 1: Implémentation de ListIterator

Dans l'exemple ci-dessous, nous avons implémenté les méthodes next(), nextIndex()et hasNext()de l' ListIteratorinterface dans une liste de tableaux.

 import java.util.ArrayList; import java.util.ListIterator; 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 ListIterator ListIterator iterate = numbers.listIterator(); // Using the next() method int number1 = iterate.next(); System.out.println("Next Element: " + number1); // Using the nextIndex() int index1 = iterate.nextIndex(); System.out.println("Position of Next Element: " + index1); // Using the hasNext() method System.out.println("Is there any next element? " + iterate.hasNext()); ) ) 

Production

ArrayList: (1, 3, 2) Élément suivant: 1 Position de l'élément suivant: 1 Y a-t-il un élément suivant? vrai

Exemple 2: Implémentation de ListIterator

Dans l'exemple ci-dessous, nous avons implémenté les méthodes previous()et previousIndex()de l' ListIteratorinterface dans une liste de tableaux.

 import java.util.ArrayList; import java.util.ListIterator; 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 ListIterator ListIterator iterate = numbers.listIterator(); iterate.next(); iterate.next(); // Using the previous() method int number1 = iterate.previous(); System.out.println("Previous Element: " + number1); // Using the previousIndex() int index1 = iterate.previousIndex(); System.out.println("Position of the Previous element: " + index1); ) ) 

Production

 ArrayList: (1, 3, 2) Élément précédent: 3 Position de l'élément précédent: 0 

Dans l'exemple ci-dessus, initialement, l'instance de l ' Iteratorétait avant 1. Comme il n'y avait pas d'élément avant 1, l'appel de la previous()méthode lèvera une exception.

Nous avons ensuite utilisé les next()méthodes 2 fois. Désormais, l' Iteratorinstance sera comprise entre 3 et 2.

Par conséquent, la previous()méthode renvoie 3.

Articles intéressants...