IntStream parallel() in Java

IntStream parallel() is a method in java.util.stream.IntStream. This method returns a parallel IntStream, i.e, it may return itself, either because the stream was already present, or because the underlying stream state was modified to be parallel.

IntStream parallel() is an intermediate operation. These operations are always lazy. Intermediate operations are invoked on a Stream instance and after they finish their processing, they give a Stream instance as output.

Syntax :



IntStream parallel()

Where, IntStream is a sequence of 
primitive int-valued elements and the function 
returns a parallel IntStream.

Below given are some examples to understand the function in a better way.
Example 1 :

filter_none

edit
close

play_arrow

link
brightness_4
code

// Java program to demonstrate working of
// IntStream parallel() on a given range
import java.util.*;
import java.util.stream.IntStream;
  
class GFG {
  
    // Driver code
    public static void main(String[] args)
    {
  
        // Creating a stream of integers
        IntStream stream = IntStream.range(5, 12);
  
        System.out.println("The corresponding "
                         "parallel IntStream is :");
        stream.parallel().forEach(System.out::println);
    }
}

chevron_right


Output :

The corresponding parallel IntStream is :
9
8
11
10
6
5
7

Example 2 :

filter_none

edit
close

play_arrow

link
brightness_4
code

// Printing sequential stream for the 
// same input as above example 1.
import java.util.*;
import java.util.stream.IntStream;
  
class GFG {
  
    // Driver code
    public static void main(String[] args)
    {
        IntStream stream = IntStream.range(5, 12);
  
        System.out.println("The corresponding "
                      "sequential IntStream is :");
        stream.sequential().forEach(System.out::println);
    }
}

chevron_right


Output :

The corresponding sequential IntStream is :
5
6
7
8
9
10
11

Example 3 :

filter_none

edit
close

play_arrow

link
brightness_4
code

// Java program to show sorted output
// of parallel stream.
import java.util.*;
import java.util.stream.IntStream;
  
class GFG {
  
    // Driver code
    public static void main(String[] args)
    {
  
        // Creating a stream of integers
        IntStream stream = IntStream.of(3, 4, 1, 5, 2, 3, 9);
  
        System.out.println("The sorted parallel"
                              " IntStream is :");
        stream.parallel().sorted().forEach(System.out::println);
    }
}

chevron_right


Output :

The sorted parallel IntStream is :
4
2
3
1
3
5
9

Note that it still shows as unsorted. That’s because forEach() is being used. To get the items processed in sorted order, use forEachOrdered(). But note that this negates the advantage of using parallel.



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.



Improved By : ampyjoe