📜  Java中的IntStream sorted()

📅  最后修改于: 2022-05-13 01:54:49.132000             🧑  作者: Mango

Java中的IntStream sorted()

IntStream sorted()返回一个由该流的元素按排序顺序组成的流。它是一个有状态的中间操作,即在处理新元素时,它可以合并来自先前看到的元素的状态。有状态的中间操作可能需要在产生结果之前处理整个输入。例如,在查看流的所有元素之前,无法通过对流进行排序产生任何结果。

句法 :

IntStream sorted()

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

异常:如果此流的元素不是 Comparable,则在执行终端操作时可能会抛出Java.lang.ClassCastException

返回值: IntStream sorted() 方法返回新流。

示例 1:使用 IntStream sorted() 对给定 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

示例 2:使用 IntStream sorted() 对 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