Java Iterator

I denne opplæringen vil vi lære om Java Iterator-grensesnittet ved hjelp av et eksempel.

Den Iteratorgrensesnittet til Java samlinger rammeverket tillater oss å få tilgang til elementer i en samling. Den har et undergrensesnitt ListIterator.

Alle Java-samlingene inkluderer en iterator()metode. Denne metoden returnerer en forekomst av iterator som brukes til å iterere over elementer i samlingene.

Metoder for Iterator

Den Iteratorgrensesnittet gir 4 metoder som kan brukes til å utføre forskjellige operasjoner på disse deler av samlinger.

  • hasNext()- returnerer truehvis det finnes et element i samlingen
  • next() - returnerer neste element i samlingen
  • remove() - fjerner det siste elementet som returneres av next()
  • forEachRemaining() - utfører den angitte handlingen for hvert gjenværende element i samlingen

Eksempel: Implementering av Iterator

I eksemplet nedenfor har vi implementert hasNext(), next(), remove()og forEachRemining()metodene for Iteratorgrensesnittet i en matriseliste.

 import java.util.ArrayList; import java.util.Iterator; 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 Iterator Iterator iterate = numbers.iterator(); // Using the next() method int number = iterate.next(); System.out.println("Accessed Element: " + number); // Using the remove() method iterate.remove(); System.out.println("Removed Element: " + number); System.out.print("Updated ArrayList: "); // Using the hasNext() method while(iterate.hasNext()) ( // Using the forEachRemaining() method iterate.forEachRemaining((value) -> System.out.print(value + ", ")); ) ) ) 

Produksjon

 ArrayList: (1, 3, 2) Accessed Element: 1 Fjernet Element: 1 Oppdatert ArrayList: 3, 2, 

Legg merke til uttalelsen i eksemplet ovenfor:

 iterate.forEachRemaining((value) -> System.put.print(value + ", ")); 

Her har vi passert lambdauttrykket som et argument for forEachRemaining()metoden.

Nå vil metoden skrive ut alle gjenværende elementer i matriselisten.

Interessante artikler...