withIndex

Common
JVM
JS
Native
1.0
fun <T> Array<out T>.withIndex(): Iterable<IndexedValue<T>>
fun ByteArray.withIndex(): Iterable<IndexedValue<Byte>>
fun ShortArray.withIndex(): Iterable<IndexedValue<Short>>
fun IntArray.withIndex(): Iterable<IndexedValue<Int>>
fun LongArray.withIndex(): Iterable<IndexedValue<Long>>
fun FloatArray.withIndex(): Iterable<IndexedValue<Float>>
fun DoubleArray.withIndex(): Iterable<IndexedValue<Double>>
fun BooleanArray.withIndex(): Iterable<IndexedValue<Boolean>>
fun CharArray.withIndex(): Iterable<IndexedValue<Char>>

Returns a lazy Iterable of IndexedValue for each element of the original array.

Common
JVM
JS
Native
1.0
fun <T> Iterable<T>.withIndex(): Iterable<IndexedValue<T>>

Returns a lazy Iterable of IndexedValue for each element of the original collection.

Common
JVM
JS
Native
1.0
fun <T> Iterator<T>.withIndex(): Iterator<IndexedValue<T>>

Returns an Iterator wrapping each value produced by this Iterator with the IndexedValue, containing value and it's index.

import samples.Sample
import java.util.*

fun main(args: Array<String>) {
//sampleStart
val iterator = ('a'..'c').iterator()

for ((index, value) in iterator.withIndex()) {
    println("The element at $index is $value")
}
//sampleEnd
}