Dans ce didacticiel, nous allons découvrir l'interface Java ListIterator à l'aide d'un exemple.
L' ListIterator
interface 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' Iterator
interface.
L' List
interface fournit une listIterator()
méthode qui renvoie une instance de l' ListIterator
interface.
Méthodes de ListIterator
L' ListIterator
interface 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 listenext()
- renvoie l'élément suivant de la listenextIndex()
renvoie l'index de l'élément que lanext()
méthode retourneraprevious()
- renvoie l'élément précédent de la listepreviousIndex()
- renvoie l'index de l'élément que laprevious()
méthode retourneraremove()
- supprime l'élément renvoyé parnext()
ouprevious()
set()
- remplace l'élément retourné par l'unnext()
ou l' autreprevious()
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' ListIterator
interface 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' ListIterator
interface 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' Iterator
instance sera comprise entre 3 et 2.
Par conséquent, la previous()
méthode renvoie 3.