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.
// 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);    }} | 
6 7 8 9 10
Example 2 : Using IntStream sorted() to sort the random numbers generated by IntStream generator().
// 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);    }} | 
501 611 7991 8467 9672
				
					


