List.associateBy()
Строит Map, где ключ вычисляется из элемента, а значение — сам элемент.
Сигнатура
fun <T, K> Iterable<T>.associateBy(keySelector: (T) -> K): Map<K, T>associateBy() создаёт Map, в которой ключи берутся из keySelector, а значениями становятся сами элементы.
val names = listOf("Ann", "Bob", "Eve")
val byLen = names.associateBy { it.length }
println(byLen) // {3=Eve}