groupBy

inline fun <T, K> Sequence<T>.groupBy(keySelector: (T) -> K): Map<K, List<T>>(source)

Groups elements of the original sequence by the key returned by the given keySelector function applied to each element and returns a map where each group key is associated with a list of corresponding elements.

The returned map preserves the entry iteration order of the keys produced from the original sequence.

The operation is terminal.

Since Kotlin

1.0

Samples


inline fun <T, K, V> Sequence<T>.groupBy(keySelector: (T) -> K, valueTransform: (T) -> V): Map<K, List<V>>(source)

Groups values returned by the valueTransform function applied to each element of the original sequence by the key returned by the given keySelector function applied to the element and returns a map where each group key is associated with a list of corresponding values.

The returned map preserves the entry iteration order of the keys produced from the original sequence.

The operation is terminal.

Since Kotlin

1.0

Samples