Java中的LongStream sorted()
LongStream sorted()返回一个由该流的元素按排序顺序组成的流。它是一个有状态的中间操作,即在处理新元素时,它可以合并来自先前看到的元素的状态。有状态的中间操作可能需要在产生结果之前处理整个输入。例如,在查看流的所有元素之前,无法通过对流进行排序产生任何结果。
句法 :
LongStream sorted()
Where, LongStream is a sequence of primitive long-valued
elements. This is the long primitive specialization of Stream.
异常:如果此流的元素不是 Comparable,则在执行终端操作时可能会抛出Java.lang.ClassCastException 。
返回值: LongStream sorted() 方法返回新流。
示例 1:使用 LongStream sorted() 对给定 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
示例 2:使用 LongStream sorted() 对 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