IntStream sorted() in Java

IntStream sorted() returns a stream consisting of the elements of this stream in sorted order. It is a stateful intermediate operation i.e, it may incorporate state from previously seen elements when processing new elements. Stateful intermediate operations may need to process the entire input before producing a result. For example, one cannot produce any results from sorting a stream until one has seen all elements of the stream.

Syntax :

IntStream sorted()

Where, IntStream is a sequence of primitive int-valued 
elements. This is the int primitive specialization of Stream.

Exception : If the elements of this stream are not Comparable, a java.lang.ClassCastException may be thrown when the terminal operation is executed.



Return Value : IntStream sorted() method returns the new stream.

Example 1 : Using IntStream sorted() to sort the numbers in given IntStream.

filter_none

edit
close

play_arrow

link
brightness_4
code

// Java code to sort IntStream
// using IntStream.sorted()
import java.util.*;
import java.util.stream.IntStream;
  
class GFG {
  
    // Driver code
    public static void main(String[] args)
    {
        // Creating an IntStream
        IntStream stream = IntStream.of(10, 9, 8, 7, 6);
  
        // displaying the stream with sorted elements
        // using IntStream.sorted() function
        stream.sorted().forEach(System.out::println);
    }
}

chevron_right


Output:

6
7
8
9
10

Example 2 : Using IntStream sorted() to sort the random numbers generated by IntStream generator().

filter_none

edit
close

play_arrow

link
brightness_4
code

// Java code to sort IntStream
// using IntStream.sorted()
import java.util.*;
import java.util.stream.IntStream;
  
class GFG {
  
    // Driver code
    public static void main(String[] args)
    {
        // Creating an IntStream by generating
        // random elements using IntStream.generate()
        IntStream stream = IntStream.generate(()
                          -> (int)(Math.random() * 10000))
                             .limit(5);
  
        // displaying the stream with sorted elements
        // using IntStream.sorted() function
        stream.sorted().forEach(System.out::println);
    }
}

chevron_right


Output:

501
611
7991
8467
9672


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.