stream流中sorted(Comparator.reverseOrder())
时间: 2023-07-21 10:02:46 浏览: 47
对于Java中的Stream流,`sorted(Comparator.reverseOrder())`的作用是对元素进行降序排序。
这里的`sorted()`方法用于对Stream流中的元素进行排序。通过传递`Comparator.reverseOrder()`作为参数,可以创建一个比较器,该比较器会对元素进行逆序比较。
示例代码如下:
```java
List<Integer> numbers = Arrays.asList(5, 3, 1, 4, 2);
List<Integer> sortedNumbers = numbers.stream()
.sorted(Comparator.reverseOrder())
.collect(Collectors.toList());
System.out.println(sortedNumbers);
```
输出结果为:`[5, 4, 3, 2, 1]`
在上述示例中,首先创建了一个包含整数的列表`numbers`。然后,通过调用`stream()`方法将其转换为Stream流。接下来,使用`sorted(Comparator.reverseOrder())`方法对流中的元素进行降序排序。最后,使用`collect(Collectors.toList())`方法将排序后的结果收集到一个新的列表中,并打印输出。
注意:`Comparator.reverseOrder()`是Java提供的默认比较器,用于对数据进行逆序排序。如果要对自定义对象进行排序,则需要提供适当的比较器。