stream sorted用法
时间: 2023-11-10 19:51:56 浏览: 36
stream.sorted() 是 Java 中用于对流中的元素进行排序的方法。它可以按照自然顺序或者使用自定义的 Comparator 来对元素进行排序。
使用示例:
```java
List<Integer> numbers = Arrays.asList(5, 3, 8, 2, 1);
List<Integer> sortedNumbers = numbers.stream()
.sorted()
.collect(Collectors.toList());
System.out.println(sortedNumbers); // 输出 [1, 2, 3, 5, 8]
```
在上述示例中,我们首先创建了一个包含整数的 List,然后通过 `stream()` 方法将其转换为流。接着调用 `sorted()` 方法对流中的元素进行排序,最后使用 `collect()` 方法将排序后的结果收集到一个新的 List 中。
如果你想要按照自定义的方式进行排序,可以使用带有 Comparator 参数的 `sorted()` 方法。例如,以下示例按照字符串长度对字符串列表进行排序:
```java
List<String> strings = Arrays.asList("apple", "banana", "orange", "grape");
List<String> sortedStrings = strings.stream()
.sorted(Comparator.comparing(String::length))
.collect(Collectors.toList());
System.out.println(sortedStrings); // 输出 [grape, apple, banana, orange]
```
在上述示例中,我们使用 `Comparator.comparing()` 方法以字符串长度作为排序依据。