Java Yineleyici

Bu eğitimde, bir örnek yardımıyla Java Yineleyici arayüzü hakkında bilgi edineceğiz.

IteratorJava koleksiyonları çerçevesinin arayüzü bir koleksiyon erişim elemanlarına bizi tanır. Bir alt arayüzü vardır ListIterator.

Tüm Java koleksiyonları bir iterator()yöntem içerir. Bu yöntem, koleksiyon öğelerini yinelemek için kullanılan bir yineleyici örneğini döndürür.

Yineleyici Yöntemleri

IteratorArayüz koleksiyonları elemanlarına çeşitli işlemleri gerçekleştirmek için de kullanılabilir 4 yöntemler sağlar.

  • hasNext()- truekoleksiyonda bir öğe varsa döndürür
  • next() - koleksiyonun sonraki öğesini döndürür
  • remove() - tarafından döndürülen son öğeyi kaldırır next()
  • forEachRemaining() - Koleksiyonun kalan her bir öğesi için belirtilen eylemi gerçekleştirir

Örnek: Yineleyicinin Uygulanması

Aşağıdaki örnekte , arayüzün hasNext(), next(), remove()ve forEachRemining()yöntemlerini Iteratorbir dizi listesinde uyguladık .

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

Çıktı

 ArrayList: (1, 3, 2) Erişilen Öğe: 1 Kaldırılan Öğe: 1 Güncellenmiş DiziList: 3, 2, 

Yukarıdaki örnekte şu ifadeye dikkat edin:

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

Burada, lambda ifadesini forEachRemaining()yöntemin bir argümanı olarak geçtik .

Şimdi yöntem, dizi listesinin kalan tüm öğelerini yazdıracaktır.

Ilginç makaleler...