logo

Java forEach döngüsü

Java, elemanları yinelemek için forEach() için yeni bir yöntem sağlar. Yinelenebilir ve Akış arayüzünde tanımlanır. Yinelenebilir arayüzde tanımlanan varsayılan bir yöntemdir. Yinelenebilir arayüzü genişleten koleksiyon sınıfları, öğeleri yinelemek için forEach döngüsünü kullanabilir.

Bu yöntem, işlevsel bir arayüz olan tek bir parametre alır. Yani lambda ifadesini argüman olarak iletebilirsiniz.


Yinelenebilir Arayüzde forEach() İmzası

 default void forEach(Consumeraction) 

Java 8 forEach() örneği 1

 import java.util.ArrayList; import java.util.List; public class ForEachExample { public static void main(String[] args) { List gamesList = new ArrayList(); gamesList.add('Football'); gamesList.add('Cricket'); gamesList.add('Chess'); gamesList.add('Hocky'); System.out.println('------------Iterating by passing lambda expression--------------'); gamesList.forEach(games -> System.out.println(games)); } } 

Çıktı:

 ------------Iterating by passing lambda expression-------------- Football Cricket Chess Hocky 

Java 8 forEach() örnek 2

 import java.util.ArrayList; import java.util.List; public class ForEachExample { public static void main(String[] args) { List gamesList = new ArrayList(); gamesList.add('Football'); gamesList.add('Cricket'); gamesList.add('Chess'); gamesList.add('Hocky'); System.out.println('------------Iterating by passing method reference---------------'); gamesList.forEach(System.out::println); } } 

Çıktı:

 ------------Iterating by passing method reference--------------- Football Cricket Chess Hocky 

Java Stream forEachOrdered() Yöntemi

ForEach() yönteminin yanı sıra Java, forEachOrdered() için bir yöntem daha sağlar. Öğeleri akışın belirttiği sıraya göre yinelemek için kullanılır.

İmza:

 void forEachOrdered(Consumer action) 

Java Stream forEachOrdered() Yöntem Örneği

 import java.util.ArrayList; import java.util.List; public class ForEachOrderedExample { public static void main(String[] args) { List gamesList = new ArrayList(); gamesList.add('Football'); gamesList.add('Cricket'); gamesList.add('Chess'); gamesList.add('Hocky'); System.out.println('------------Iterating by passing lambda expression---------------'); gamesList.stream().forEachOrdered(games -> System.out.println(games)); System.out.println('------------Iterating by passing method reference---------------'); gamesList.stream().forEachOrdered(System.out::println); } } 

Çıktı:

 ------------Iterating by passing lambda expression--------------- Football Cricket Chess Hocky ------------Iterating by passing method reference--------------- Football Cricket Chess Hocky