Java ListIterator-gränssnitt

Innehållsförteckning

I den här handledningen lär vi oss om Java ListIterator-gränssnittet med hjälp av ett exempel.

Det ListIteratorgränssnitt samlingar ramen för Java ger funktionalitet för att komma delar av en lista.

Det är dubbelriktat. Det betyder att det gör att vi kan upprepa element i en lista i båda riktningarna.

Det utökar Iteratorgränssnittet.

Den Listgränssnittet innehåller en listIterator()metod som returnerar en instans av ListIteratorgränssnittet.

Metoder för ListIterator

I ListIteratorgränssnittet ger metoder som kan användas för att utföra olika operationer på elementen i en lista.

  • hasNext() - returnerar true om det finns ett element i listan
  • next() - returnerar nästa element i listan
  • nextIndex()returnerar indexet för det element som next()metoden kommer att returnera
  • previous() - returnerar föregående element i listan
  • previousIndex()- returnerar indexet för det element som previous()metoden kommer att returnera
  • remove()- tar bort elementet som returneras av antingen next()ellerprevious()
  • set()- ersätter elementet som returneras av antingen next()eller previous()med det angivna elementet

Exempel 1: Implementering av ListIterator

I exemplet nedan har vi genomfört next(), nextIndex()och hasNext()metoderna för ListIteratorgränssnittet i en rad listan.

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

Produktion

ArrayList: (1, 3, 2) Nästa element: 1 Position för nästa element: 1 Finns det något nästa element? Sann

Exempel 2: Implementering av ListIterator

I exemplet nedan har vi implementerat previous()och previousIndex()metoderna för ListIteratorgränssnittet i en matrislista.

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

Produktion

 ArrayList: (1, 3, 2) Föregående element: 3 Tidigare element: 0 

I exemplet ovan var initialt förekomsten av Iteratorföre 1. Eftersom det inte fanns något element före 1 så kallar previous()metoden ett undantag.

Vi använde sedan next()metoderna två gånger. Nu Iteratorkommer instansen att vara mellan 3 och 2.

Därför previous()returnerar metoden 3.

Intressanta artiklar...