LongStream sorted() in Java

LongStream 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 :
LongStream sorted() Where, LongStream is a sequence of primitive long-valued elements. This is the long 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 : LongStream sorted() method returns the new stream.
Example 1 : Using LongStream sorted() to sort the numbers in given LongStream.
// Java code to sort LongStream// using LongStream.sorted()import java.util.*;import java.util.stream.LongStream;  class GFG {      // Driver code    public static void main(String[] args)    {        // Creating an LongStream        LongStream stream = LongStream.of(10L, 9L, 8L, 7L, 6L);          // displaying the stream with sorted elements        // using LongStream.sorted() function        stream.sorted().forEach(System.out::println);    }} |
6 7 8 9 10
Example 2 : Using LongStream sorted() to sort the random numbers generated by LongStream generator().
// Java code to sort LongStream// using LongStream.sorted()import java.util.*;import java.util.stream.LongStream;  class GFG {      // Driver code    public static void main(String[] args)    {        // Creating an LongStream by generating        // random elements using LongStream.generate()        LongStream stream = LongStream.generate(()                                                    -> (long)(Math.random() * 10000))                                .limit(5);          // displaying the stream with sorted elements        // using LongStream.sorted() function        stream.sorted().forEach(System.out::println);    }} |
2218 6150 6757 8020 8266



