stream流sorted 倒序
时间: 2023-11-07 14:57:00 浏览: 86
stream流的sorted方法可以用于对集合进行排序。如果想要进行倒序排序,可以使用Comparator的reversed()方法或者reverseOrder()方法。例如,可以按照类的属性一进行倒序排序,可以使用下面的代码:
list.stream().sorted(Comparator.comparing(类::属性一).reversed())
或者
list.stream().sorted(Comparator.comparing(类::属性一,Comparator.reverseOrder()))
相关问题
stream.sorted倒序
要以倒序对流进行排序,可以使用`sorted`方法的`Comparator`参数来指定一个比较器,比较器将负责按照倒序进行排序。
例如,假设我们有一个整数流,我们想要按照倒序对其进行排序:
```java
Stream<Integer> intStream = Arrays.stream(new Integer[] { 1, 3, 2, 5, 4 });
List<Integer> sortedList = intStream
.sorted(Comparator.reverseOrder()) // 使用 reverseOrder() 指定倒序比较器
.collect(Collectors.toList());
System.out.println(sortedList); // 输出 [5, 4, 3, 2, 1]
```
在这个例子中,我们使用了`Comparator.reverseOrder()`方法来获取一个倒序比较器,该比较器将负责按照倒序对流进行排序。最终,我们使用`collect`方法将排序后的流转换为一个列表并输出。
Stream.sorted倒序
您可以使用 `sorted()` 方法的重载形式来实现倒序排序。重载形式接受一个 `Comparator` 对象作为参数,该对象定义了排序顺序。您可以使用 `Comparator.reverseOrder()` 方法来获取一个默认的逆序排序器。
下面是一个示例代码:
```java
List<Integer> numbers = Arrays.asList(3, 1, 4, 1, 5, 9, 2, 6, 5, 3, 5);
List<Integer> sortedNumbers = numbers.stream()
.sorted(Comparator.reverseOrder())
.collect(Collectors.toList());
System.out.println(sortedNumbers);
```
这将输出:`[9, 6, 5, 5, 5, 4, 3, 3, 2, 1, 1]`,即原始列表按逆序排序后的结果。
阅读全文