Avatar ·

¿Qué análogos de Java 8 Stream.collect existen en la biblioteca estándar de Kotlin?

¡Hola! Estoy migrando de Java a Kotlin y estoy aprendiendo activamente la biblioteca estándar. En Java solía usar Stream API, especialmente el método collect con varios collectors: Collectors.toList(), Collectors.groupingBy(), Collectors.joining(), etc.

Por ejemplo, en Java podía escribir:

List<String> names = people.stream()
    .filter(p -> p.getAge() > 18)
    .map(Person::getName)
    .collect(Collectors.toList());

O agrupar personas por edad:

Map<Integer, List<Person>> byAge = people.stream()
    .collect(Collectors.groupingBy(Person::getAge));

En Kotlin veo que hay funciones .filter, .map, pero no encuentro un análogo directo de .collect(Collectors.toList()). Intenté escribir .toList(), pero no estoy seguro de que sea correcto y eficiente.

Indíquenme, ¿qué funciones en la biblioteca estándar