reduceRightIndexed所在位置是kotlin.text.reduceRightIndexed,其相关用法介绍如下。

用法:

inline fun CharSequence.reduceRightIndexed(
    operation: (index: Int, Char, acc: Char) -> Char
): Char

从最后一个字符开始累加值,并将 operation 从右到左应用到每个字符,其索引在原始字符序列和当前累加器值中。

如果此 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
}

输出:

dcba
dc2b1a0

参数

operation- 获取字符索引、字符本身和当前累加器值并计算下一个累加器值的函数。