Fabrication industrielle
Internet des objets industriel | Matériaux industriels | Entretien et réparation d'équipement | Programmation industrielle |
home  MfgRobots >> Fabrication industrielle >  >> Industrial programming >> Java

Interface Java ListIterator

Interface Java ListIterator

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

Le ListIterator L'interface du framework de collections Java fournit la fonctionnalité permettant d'accéder aux éléments d'une liste.

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

Il étend le Iterator interface.

Le List l'interface fournit un listIterator() méthode qui renvoie une instance du ListIterator interface.

Méthodes de ListIterator

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

  • hasNext() - renvoie vrai s'il existe un élément dans la liste
  • next() - renvoie l'élément suivant de la liste
  • nextIndex() retourne l'indice de l'élément que le next() méthode renverra
  • previous() - renvoie l'élément précédent de la liste
  • previousIndex() - retourne l'index de l'élément que le previous() méthode renverra
  • remove() - supprime l'élément renvoyé soit par next() ou previous()
  • set() - remplace l'élément renvoyé soit par next() ou previous() avec l'élément spécifié

Exemple 1 :Implémentation de ListIterator

Dans l'exemple ci-dessous, nous avons implémenté le next() , nextIndex() et hasNext() méthodes du 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<Integer> numbers = new ArrayList<>();
        numbers.add(1);
        numbers.add(3);
        numbers.add(2);
        System.out.println("ArrayList: " + numbers);

        // Creating an instance of ListIterator
        ListIterator<Integer> 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());
    }
}

Sortie

ArrayList: [1, 3, 2]
Next Element: 1
Position of Next Element: 1
Is there any next element? true

Exemple 2 :Implémentation de ListIterator

Dans l'exemple ci-dessous, nous avons implémenté le previous() et previousIndex() méthodes du 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<Integer> numbers = new ArrayList<>();
        numbers.add(1);
        numbers.add(3);
        numbers.add(2);
        System.out.println("ArrayList: " + numbers);

        // Creating an instance of ListIterator
        ListIterator<Integer> 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);
    }
}

Sortie

ArrayList: [1, 3, 2]
Previous Element: 3
Position of the Previous Element: 0

Dans l'exemple ci-dessus, initialement, l'instance du Iterator était avant 1. Puisqu'il n'y avait pas d'élément avant 1, appelez donc le previous() méthode lèvera une exception.

Nous avons ensuite utilisé le next() méthodes 2 fois. Maintenant le Iterator instance sera comprise entre 3 et 2.

D'où le previous() la méthode renvoie 3.


Java

  1. Interface C#
  2. Opérateurs Java
  3. Commentaires Java
  4. InterfaceJava
  5. Java essayer avec des ressources
  6. Annotations Java
  7. Interface Java NavigableSet
  8. Expressions Java Lambda
  9. Interface vs classe abstraite en Java :quelle est la différence ?