Java Iterator

Tässä opetusohjelmassa opitaan Java Iterator -käyttöliittymästä esimerkin avulla.

IteratorRajapinta Java kokoelmien puitteet pystymme käyttämään elementtejä kokoelma. Siinä on alapinta ListIterator.

Kaikissa Java-kokoelmissa on iterator()menetelmä. Tämä menetelmä palauttaa iteraattorin ilmentymän, jota käytetään iteroimaan kokoelmien elementtien yli.

Iteraattorin menetelmät

IteratorKäyttöliittymä tarjoaa 4 menetelmiä, joita voidaan käyttää suorittamaan erilaisia toimintoja elementtejä kokoelmista.

  • hasNext()- palauttaa, truejos kokoelmassa on elementti
  • next() - palauttaa kokoelman seuraavan elementin
  • remove() - poistaa viimeisen elementin palauttaman elementin next()
  • forEachRemaining() - suorittaa määritetyn toiminnon kokoelman jokaiselle jäljelle jääneelle elementille

Esimerkki: Iteratorin toteutus

Alla olevassa esimerkissä, olemme toteuttaneet hasNext(), next(), remove()ja forEachRemining()menetelmät Iteratorrajapinnan array luetteloon.

 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 + ", ")); ) ) ) 

Tuotos

 ArrayList: (1, 3, 2) Acessed Element: 1 Poistettu Element: 1 Päivitetty ArrayList: 3, 2, 

Huomaa yllä olevassa esimerkissä lause:

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

Tässä olemme ohittaneet lambda-lausekkeen forEachRemaining()menetelmän argumenttina .

Nyt menetelmä tulostaa kaikki jäljellä olevat taulukkoelementit.

Mielenkiintoisia artikkeleita...