V tomto kurzu se na příkladu dozvíme o rozhraní Java ListIterator.
ListIteratorRozhraní sbírek rámce Java poskytuje funkce pro přístup k prvkům seznamu.
Je obousměrný. To znamená, že nám umožňuje iterovat prvky seznamu v obou směrech.
Rozšiřuje Iteratorrozhraní.

ListRozhraní poskytuje listIterator()metodu, která vrací instanci ListIteratorrozhraní.
Metody ListIterator
ListIteratorRozhraní poskytuje metody, které mohou být použity k provádění různých operací na prvky seznamu.
hasNext()- vrátí hodnotu true, pokud v seznamu existuje prveknext()- vrátí další prvek seznamunextIndex()vrací index prvku, kterýnext()metoda vrátíprevious()- vrátí předchozí prvek seznamupreviousIndex()- vrátí index prvku, kterýprevious()metoda vrátíremove()- odebere prvek vrácený buďnext()neboprevious()set()- nahradí prvek vrácený buďnext()neboprevious()zadaným prvkem
Příklad 1: Implementace ListIterator
V níže uvedeném příkladu jsme implementovali rozhraní next(), nextIndex()a hasNext()metody ListIteratorrozhraní v seznamu polí.
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()); ) )
Výstup
ArrayList: (1, 3, 2) Další prvek: 1 Pozice dalšího prvku: 1 Existuje nějaký další prvek? skutečný
Příklad 2: Implementace ListIterator
V níže uvedeném příkladu jsme implementovali metody previous()a previousIndex()metody ListIteratorrozhraní v seznamu polí.
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); ) )
Výstup
ArrayList: (1, 3, 2) Předchozí prvek: 3 Poloha předchozího prvku: 0
Ve výše uvedeném příkladu byla původně instance Iteratorpřed 1. Protože před 1 nebyl žádný prvek, volání previous()metody vyvolá výjimku.
next()Metody jsme poté použili dvakrát. Nyní bude Iteratorinstance mezi 3 a 2.
Proto previous()metoda vrací 3.








