Kotlin标准库中有哪些Java 8 Stream.collect的类似功能?
大家好!我正在从Java迁移到Kotlin,遇到了一个问题。在Java中,我经常使用Stream API和`collect()`方法来处理集合。例如,要按城市对用户列表进行分组或收集到Map中,我会写:
```java
List users = getUsers();
Map> byCity = users.stream()
.collect(Collectors.groupingBy(User::getCity));
```
或者要查找唯一名称并排序:
```java
List uniqueSortedNames = users.stream()
.map(User::getName)
.distinct()
.sorted()
.collect(Collectors.toList());
```
在Kotlin中,我看到有`map`、`filter`、`sorted`等函数,但我找不到`collect()`的直接对应。我知道Kotlin中的集合通过`toList()`、`toSet()`、`groupBy()`等函数进行了扩展,但我不确定这是否是完全的替代。
请告诉我,Kotlin标准库(kotlin-stdlib)中哪些函数可以替代带有不同collectors的`Stream.collect()`?