Avatar ·

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()`?