list.stream().sorted 怎么重新转为列表
时间: 2024-06-22 08:04:02 浏览: 158
howto-sorting.pdf
`List.stream().sorted()` 是Java 8引入的流(Stream) API中对列表进行排序的一种方法。当你对列表的流执行 `sorted()` 操作后,流会返回一个新的已排序的流,但这个操作并不会直接改变原列表,因为它是一个惰性求值的操作,只有当你调用 `.collect(Collectors.toList())` 或者 `.toArray()` 等收集操作时,才会实际创建一个新的列表。
如果你想将排序后的流转换回列表,可以按照以下步骤:
1. 创建一个新的流,对原始列表进行排序:
```java
List<String> originalList = ...; // 假设这是你要排序的列表
Stream<String> sortedStream = originalList.stream().sorted();
```
2. 使用 `collect` 方法将排序后的流转换为列表:
```java
List<String> sortedList = sortedStream.collect(Collectors.toList());
```
或者使用 `toArray` 方法:
```java
Object[] sortedArray = sortedStream.toArray();
List<String> sortedListFromArray = Arrays.asList(sortedArray);
```
这样,`sortedList` 就是一个新的按照指定顺序排列的列表了。
阅读全文