logo

Ciclo Java forEach

Java fornisce un nuovo metodo forEach() per ripetere gli elementi. È definito nell'interfaccia Iterable e Stream. È un metodo predefinito definito nell'interfaccia Iterable. Le classi di raccolta che estendono l'interfaccia Iterable possono utilizzare il ciclo forEach per iterare gli elementi.

Questo metodo accetta un singolo parametro che è un'interfaccia funzionale. Quindi puoi passare l'espressione lambda come argomento.


forEach() Firma nell'interfaccia Iterable

 default void forEach(Consumeraction) 

Java 8 forEach() esempio 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)); } } 

Produzione:

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

Java 8 forEach() esempio 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); } } 

Produzione:

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

Metodo Java Stream forEachOrdered()

Insieme al metodo forEach(), Java fornisce un altro metodo forEachOrdered(). Viene utilizzato per ripetere gli elementi nell'ordine specificato dallo stream.

Singolatura:

 void forEachOrdered(Consumer action) 

Esempio del metodo Java Stream forEachOrdered()

 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); } } 

Produzione:

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