Sunday, June 14, 2026
HomeLanguagesJavaStream forEach() method in Java with examples

Stream forEach() method in Java with examples

Stream forEach(Consumer action) performs an action for each element of the stream. Stream forEach(Consumer action) is a terminal operation i.e, it may traverse the stream to produce a result or a side-effect.

Syntax :

void forEach(Consumer<? super T> action)

Where, Consumer is a functional interface
and T is the type of stream elements.

Note : The behavior of this operation is explicitly nondeterministic. Also, for any given element, the action may be performed at whatever time and in whatever thread the library chooses.

Example 1 : To perform print operation on each element of reversely sorted stream.




// Java code for forEach
// (Consumer action) in Java 8
import java.util.*;
  
class GFG {
  
    // Driver code
    public static void main(String[] args)
    {
  
        // Creating a list of Integers
        List<Integer> list = Arrays.asList(2, 4, 6, 8, 10);
  
        // Using forEach(Consumer action) to
        // print the elements of stream
        // in reverse order
        list.stream().sorted(Comparator.reverseOrder()).forEach(System.out::println);
    }
}


Output:

10
8
6
4
2

Example 2 : To perform print operation on each element of string stream.




// Java code for forEach
// (Consumer action) in Java 8
import java.util.*;
  
class GFG {
  
    // Driver code
    public static void main(String[] args)
    {
  
        // Creating a list of Strings
        List<String> list = Arrays.asList("GFG", "Geeks",
                                          "for", "Lazyroar");
  
        // Using forEach(Consumer action) to
        // print the elements of stream
        list.stream().forEach(System.out::println);
    }
}


Output:

GFG
Geeks
for
Lazyroar

Example 3 : To perform print operation on each element of reversely sorted string stream.




// Java code for forEach
// (Consumer action) in Java 8
import java.util.*;
import java.util.stream.Stream;
  
class GFG {
  
    // Driver code
    public static void main(String[] args)
    {
  
        // Creating a Stream of Strings
        Stream<String> stream = Stream.of("GFG", "Geeks",
                                          "for", "Lazyroar");
  
        // Using forEach(Consumer action) to print
        // Character at index 1 in reverse order
        stream.sorted(Comparator.reverseOrder())
            .flatMap(str -> Stream.of(str.charAt(1)))
            .forEach(System.out::println);
    }
}


Output:

o
e
e
F
RELATED ARTICLES

Most Popular

Dominic
32515 POSTS0 COMMENTS
Milvus
131 POSTS0 COMMENTS
Nango Kala
6897 POSTS0 COMMENTS
Nicole Veronica
12013 POSTS0 COMMENTS
Nokonwaba Nkukhwana
12109 POSTS0 COMMENTS
Shaida Kate Naidoo
7019 POSTS0 COMMENTS
Ted Musemwa
7262 POSTS0 COMMENTS
Thapelo Manthata
6976 POSTS0 COMMENTS
Umr Jansen
6964 POSTS0 COMMENTS