Interfață Java ListIterator

În acest tutorial, vom afla despre interfața Java ListIterator cu ajutorul unui exemplu.

ListIteratorInterfața cadrului colecțiilor Java oferă funcționalitatea elementelor de acces ale unei liste.

Este bidirecțională. Aceasta înseamnă că ne permite să iterăm elemente ale unei liste în ambele direcții.

Extinde Iteratorinterfața.

ListInterfața oferă o listIterator()metodă care returnează o instanta a ListIteratorinterfetei.

Metode ListIterator

ListIteratorInterfața prevede metode care pot fi utilizate pentru a efectua diverse operații pe elementele unei liste.

  • hasNext() - returnează true dacă există un element în listă
  • next() - returnează următorul element al listei
  • nextIndex()returnează indexul elementului pe care îl next()va returna metoda
  • previous() - returnează elementul anterior al listei
  • previousIndex()- returnează indexul elementului pe care îl previous()va returna metoda
  • remove()- elimină elementul returnat de oricare next()sauprevious()
  • set()- înlocuiește elementul returnat de oricare next()sau previous()cu elementul specificat

Exemplul 1: Implementarea ListIterator

In exemplul de mai jos, am implementat next(), nextIndex()și hasNext()metodele ListIteratorinterfeței într - o listă de matrice.

 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()); ) ) 

Ieșire

ArrayList: (1, 3, 2) Element următor: 1 Poziția elementului următor: 1 Există vreun element următor? Adevărat

Exemplul 2: Implementarea ListIterator

În exemplul de mai jos, am implementat previous()și previousIndex()metodele ListIteratorinterfeței într-o listă de matrice.

 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); ) ) 

Ieșire

 ArrayList: (1, 3, 2) Element anterior: 3 Poziția elementului anterior: 0 

În exemplul de mai sus, inițial, instanța a Iteratorfost înainte de 1. Deoarece nu exista niciun element înainte de 1, atunci apelarea previous()metodei va arunca o excepție.

Apoi am folosit next()metodele de 2 ori. Acum Iteratorinstanța va fi între 3 și 2.

Prin urmare, previous()metoda returnează 3.

Articole interesante...