Stream forEachOrdered() method in Java with examples

Stream forEachOrdered(Consumer action) performs an action for each element of this stream, in the encounter order of the stream if the stream has a defined encounter order. Stream forEachOrdered(Consumer action) is a terminal operation i.e, it may traverse the stream to produce a result or a side-effect.

Syntax :

void forEachOrdered(Consumer<? super T> action)

Where, Consumer is a functional interface which 
is expected to operate via side-effects. and T 
is the type of stream elements.

Note : This operation processes the elements one at a time, in encounter order if one exists. Performing the action for one element happens-before performing the action for subsequent elements.



Example 1 : To print the elements of integer array in original order.

filter_none

edit
close

play_arrow

link
brightness_4
code

// Java code for forEachOrdered
// (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(10, 19, 20, 1, 2);
      
    // Using forEachOrdered(Consumer action) to 
    // print the elements of stream in encounter order
    list.stream().forEachOrdered(System.out::println);
      
  
}
}

chevron_right


Output:

10
19
20
1
2

Example 2 : To print the elements of string array in original order.

filter_none

edit
close

play_arrow

link
brightness_4
code

// Java code for forEachOrdered
// (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", "GeeksforGeeks");
      
    // Using forEachOrdered(Consumer action) to 
    // print the elements of stream in encounter order
    list.stream().forEachOrdered(System.out::println);
      
  
}
}

chevron_right


Output:

GFG
Geeks
for
GeeksforGeeks

Example 3 : To print the characters at index 2 of string array in original order.

filter_none

edit
close

play_arrow

link
brightness_4
code

// Java code for forEachOrdered
// (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", "GeeksforGeeks");
      
    // Using forEachOrdered(Consumer action) 
    stream.flatMap(str-> Stream.of(str.charAt(2)))
          .forEachOrdered(System.out::println);
      
  
}
}

chevron_right


Output:

G
e
r
e


My Personal Notes arrow_drop_up

In love with a semicolon because sometimes i miss it so badly)

If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.

Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.