Spec-Zone.ru › Kotlin 1.4

reduceRightIndexed

kotlin-stdlib / kotlin.text / reduceRightIndexed
Требования к платформе и версии: JVM (1.0), JS (1.0), Native (1.0)
inline fun CharSequence.reduceRightIndexed(
    operation: (index: Int, Char, acc: Char) -> Char
): Char

Накапливает значение, начиная с последнего символа и применяя операцию справа налево к каждому символу с его индексом в исходной последовательности символов и текущим накопленным значением.

Выбрасывает исключение, если эта последовательность символов пуста. Если пустая последовательность символов может быть ожидаемым результатом, используйте reduceRightIndexedOrNull вместо этого. Она возвращает null когда её получатель пустой.

import kotlin.test.*

fun main(args: Array<String>) {
//sampleStart
val strings = listOf("a", "b", "c", "d")
println(strings.reduceRight { string, acc -> acc + string }) // dcba
println(strings.reduceRightIndexed { index, string, acc -> acc + string + index }) // dc2b1a0

// emptyList<Int>().reduceRight { _, _ -> 0 } //  will fail
//sampleEnd
}

Параметры

operation - функция, которая принимает индекс символа, сам символ и текущее накопленное значение и рассчитывает следующее накопленное значение.

© 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/reduce-right-indexed.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API