associateByTo
inline fun <K, M : MutableMap<in K, in Char>> CharSequence.associateByTo( destination: M, keySelector: (Char) -> K ): M
Заполняет и возвращает изменяемую карту назначения парами ключ-значение, где ключ предоставляется функцией выбора ключа, применяемой к каждому символу заданной последовательности символов, а значением является сам символ.
Если любые два символа имеют одинаковый ключ, возвращаемый функцией выбора ключа, в карту добавляется последний из них.
import kotlin.test.*
fun main(args: Array<String>) {
//sampleStart
val string = "bonne journée"
// associate each character by its code
val result = mutableMapOf<Int, Char>()
string.associateByTo(result) { char -> char.toInt() }
// notice each char code occurs only once
println(result) // {98=b, 111=o, 110=n, 101=e, 32= , 106=j, 117=u, 114=r, 233=é}
//sampleEnd
}inline fun <K, V, M : MutableMap<in K, in V>> CharSequence.associateByTo( destination: M, keySelector: (Char) -> K, valueTransform: (Char) -> V ): M
Заполняет и возвращает изменяемую карту назначения парами ключ-значение, где ключ предоставляется функцией выбора ключа, а значение предоставляется функцией преобразования значения, применяемой к символам заданной последовательности символов.
Если любые два символа имеют одинаковый ключ, возвращаемый функцией выбора ключа, в карту добавляется последний из них.
import kotlin.test.*
fun main(args: Array<String>) {
//sampleStart
val string = "bonne journée"
// associate each character by the code of its upper case equivalent and transform the character to upper case
val result = mutableMapOf<Int, Char>()
string.associateByTo(result, { char -> char.toUpperCase().toInt() }, { char -> char.toUpperCase() })
// notice each char code occurs only once
println(result) // {66=B, 79=O, 78=N, 69=E, 32= , 74=J, 85=U, 82=R, 201=É}
//sampleEnd
}
© 2010–2020 JetBrains s.r.o. and Kotlin Programming Language contributors
Licensed under the Apache License, Version 2.0.
https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.text/associate-by-to.html