Friday, September 5, 2025
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
32269 POSTS0 COMMENTS
Milvus
81 POSTS0 COMMENTS
Nango Kala
6637 POSTS0 COMMENTS
Nicole Veronica
11802 POSTS0 COMMENTS
Nokonwaba Nkukhwana
11865 POSTS0 COMMENTS
Shaida Kate Naidoo
6752 POSTS0 COMMENTS
Ted Musemwa
7027 POSTS0 COMMENTS
Thapelo Manthata
6704 POSTS0 COMMENTS
Umr Jansen
6721 POSTS0 COMMENTS