详细解析 Java 8 Stream API 中的 sorted 方法
Java 8 引入的 Stream API 提供了一种便捷的方式来处理集合数据。sorted 方法是 Stream API 中的一个重要中间操作,用于对流中的元素进行排序。它提供了自然排序和自定义排序两种方式,以适应不同的排序需求。
一、sorted 方法的定义
sorted 方法有两种定义方式:
- 自然排序(需要元素实现 Comparable 接口):
Stream<T> sorted();
- 自定义排序(接受一个 Comparator 接口的实现):
Stream<T> sorted(Comparator<? super T> comparator);
二、sorted 方法的使用场景
sorted 方法广泛应用于以下场景:
- 自然排序:按照元素的自然顺序进行排序。
- 自定义排序:按照特定的比较规则进行排序。
三、sorted 方法的示例
以下是一些 sorted 方法的使用示例,展示其在自然排序和自定义排序中的应用。
3.1 自然排序
假设有一个包含整数的列表,我们希望对其进行升序排序。
List<Integer> numbers = Arrays.asList(5, 3, 8, 1, 9, 2);
List<Integer> sortedNumbers = numbers.stream()
.sorted()
.collect(Collectors.toList()