Java Iterator

Σε αυτό το σεμινάριο, θα μάθουμε για τη διεπαφή Java Iterator με τη βοήθεια ενός παραδείγματος.

Η Iteratorδιεπαφή του πλαισίου συλλογών Java μας επιτρέπει να έχουμε πρόσβαση σε στοιχεία μιας συλλογής. Έχει μια υποσύνδεση ListIterator.

Όλες οι συλλογές Java περιλαμβάνουν μια iterator()μέθοδο. Αυτή η μέθοδος επιστρέφει μια παρουσία επαναληπτικού που χρησιμοποιείται για την επανάληψη στοιχείων των συλλογών.

Μέθοδοι Iterator

Η Iteratorδιεπαφή παρέχει 4 μεθόδους που μπορούν να χρησιμοποιηθούν για την εκτέλεση διαφόρων λειτουργιών σε στοιχεία συλλογών.

  • hasNext()- επιστρέφει trueεάν υπάρχει ένα στοιχείο στη συλλογή
  • next() - επιστρέφει το επόμενο στοιχείο της συλλογής
  • remove() - αφαιρεί το τελευταίο στοιχείο που επέστρεψε από το next()
  • forEachRemaining() - εκτελεί την καθορισμένη ενέργεια για κάθε εναπομένον στοιχείο της συλλογής

Παράδειγμα: Εφαρμογή του Iterator

Στο παρακάτω παράδειγμα, έχουμε εφαρμόσει το hasNext(), next(), remove()και τις forEachRemining()μεθόδους της Iteratorδιεπαφής σε μια λίστα πίνακα.

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

Παραγωγή

 ArrayList: (1, 3, 2) Στοιχείο πρόσβασης: 1 Στοιχείο που αφαιρέθηκε: 1 Ενημερώθηκε ArrayList: 3, 2, 

Στο παραπάνω παράδειγμα, παρατηρήστε τη δήλωση:

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

Εδώ, έχουμε περάσει την έκφραση λάμδα ως επιχείρημα της forEachRemaining()μεθόδου.

Τώρα η μέθοδος θα εκτυπώσει όλα τα υπόλοιπα στοιχεία της λίστας πίνακα.

ενδιαφέροντα άρθρα...