Open In App

Stream forEachOrdered() method in Java with examples

Improve
Improve
Like Article
Like
Save
Share
Report

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.




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


Output:

10
19
20
1
2

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




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


Output:

GFG
Geeks
for
GeeksforGeeks

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




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


Output:

G
e
r
e


Last Updated : 06 Dec, 2018
Like Article
Save Article
Previous
Next
Share your thoughts in the comments
Similar Reads