Rozhraní Java ListIterator

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 prvek
  • next() - vrátí další prvek seznamu
  • nextIndex()vrací index prvku, který next()metoda vrátí
  • previous() - vrátí předchozí prvek seznamu
  • previousIndex()- vrátí index prvku, který previous()metoda vrátí
  • remove()- odebere prvek vrácený buď next()neboprevious()
  • set()- nahradí prvek vrácený buď next()nebo previous()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.

Zajímavé články...