filterIndexedTo

inline fun <T, C : MutableCollection<in T>> Sequence<T>.filterIndexedTo(destination: C, predicate: (index: Int, T) -> Boolean): C(source)

Appends all elements matching the given predicate to the given destination.

Since Kotlin

1.0

Parameters

predicate

function that takes the index of an element and the element itself and returns the result of predicate evaluation on the element.

The operation is terminal.

Samples

import kotlin.test.*

fun main() { 
   //sampleStart 
   val numbers: List<Int> = listOf(0, 1, 2, 3, 4, 8, 6)
val numbersOnSameIndexAsValue = mutableListOf<Int>()

println(numbersOnSameIndexAsValue) // []

numbers.filterIndexedTo(numbersOnSameIndexAsValue) { index, i -> index == i }

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