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

用法:

fun <T> Sequence<T>.filterIndexed(
    predicate: (index: Int, T) -> Boolean
): Sequence<T>

返回一个仅包含与给定 predicate 匹配的元素的序列。

例子:

import kotlin.test.*

fun main(args: Array<String>) {
//sampleStart
val numbers: List<Int> = listOf(0, 1, 2, 3, 4, 8, 6)
val numbersOnSameIndexAsValue = numbers.filterIndexed { index, i -> index == i }

println(numbersOnSameIndexAsValue) // [0, 1, 2, 3, 4, 6]
//sampleEnd
}

输出:

[0, 1, 2, 3, 4, 6]

参数

predicate-

函数获取元素的索引和元素本身,并返回元素的谓词评估结果。

操作是 intermediatestateless