I denne opplæringen vil vi lære om Java Iterator-grensesnittet ved hjelp av et eksempel.
Den Iterator
grensesnittet 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 Iterator
grensesnittet gir 4 metoder som kan brukes til å utføre forskjellige operasjoner på disse deler av samlinger.
hasNext()
- returnerertrue
hvis det finnes et element i samlingennext()
- returnerer neste element i samlingenremove()
- fjerner det siste elementet som returneres avnext()
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 Iterator
grensesnittet 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.