elementAtOrElse

inline fun <T> Array<out T>.elementAtOrElse(index: Int, defaultValue: (Int) -> T): T(source)
inline fun ByteArray.elementAtOrElse(index: Int, defaultValue: (Int) -> Byte): Byte(source)
inline fun ShortArray.elementAtOrElse(index: Int, defaultValue: (Int) -> Short): Short(source)
inline fun IntArray.elementAtOrElse(index: Int, defaultValue: (Int) -> Int): Int(source)
inline fun LongArray.elementAtOrElse(index: Int, defaultValue: (Int) -> Long): Long(source)
inline fun FloatArray.elementAtOrElse(index: Int, defaultValue: (Int) -> Float): Float(source)
inline fun DoubleArray.elementAtOrElse(index: Int, defaultValue: (Int) -> Double): Double(source)
inline fun BooleanArray.elementAtOrElse(index: Int, defaultValue: (Int) -> Boolean): Boolean(source)
inline fun CharArray.elementAtOrElse(index: Int, defaultValue: (Int) -> Char): Char(source)

Returns an element at the given index or the result of calling the defaultValue function if the index is out of bounds of this array.

Since Kotlin

1.0

Samples

import kotlin.test.*

fun main() { 
   //sampleStart 
   val list = listOf(1, 2, 3)
println(list.elementAtOrElse(0) { 42 }) // 1
println(list.elementAtOrElse(2) { 42 }) // 3
println(list.elementAtOrElse(3) { 42 }) // 42

val emptyList = emptyList<Int>()
println(emptyList.elementAtOrElse(0) { "no int" }) // no int 
   //sampleEnd
}

fun <T> Iterable<T>.elementAtOrElse(index: Int, defaultValue: (Int) -> T): T(source)

Returns an element at the given index or the result of calling the defaultValue function if the index is out of bounds of this collection.

Since Kotlin

1.0

Samples

import kotlin.test.*

fun main() { 
   //sampleStart 
   val list = listOf(1, 2, 3)
println(list.elementAtOrElse(0) { 42 }) // 1
println(list.elementAtOrElse(2) { 42 }) // 3
println(list.elementAtOrElse(3) { 42 }) // 42

val emptyList = emptyList<Int>()
println(emptyList.elementAtOrElse(0) { "no int" }) // no int 
   //sampleEnd
}

inline fun <T> List<T>.elementAtOrElse(index: Int, defaultValue: (Int) -> T): T(source)

Returns an element at the given index or the result of calling the defaultValue function if the index is out of bounds of this list.

Since Kotlin

1.0

Samples

import kotlin.test.*

fun main() { 
   //sampleStart 
   val list = listOf(1, 2, 3)
println(list.elementAtOrElse(0) { 42 }) // 1
println(list.elementAtOrElse(2) { 42 }) // 3
println(list.elementAtOrElse(3) { 42 }) // 42

val emptyList = emptyList<Int>()
println(emptyList.elementAtOrElse(0) { "no int" }) // no int 
   //sampleEnd
}

inline fun UIntArray.elementAtOrElse(index: Int, defaultValue: (Int) -> UInt): UInt(source)
inline fun ULongArray.elementAtOrElse(index: Int, defaultValue: (Int) -> ULong): ULong(source)
inline fun UByteArray.elementAtOrElse(index: Int, defaultValue: (Int) -> UByte): UByte(source)

Returns an element at the given index or the result of calling the defaultValue function if the index is out of bounds of this array.

Since Kotlin

1.3

Samples

import kotlin.test.*

fun main() { 
   //sampleStart 
   val list = listOf(1, 2, 3)
println(list.elementAtOrElse(0) { 42 }) // 1
println(list.elementAtOrElse(2) { 42 }) // 3
println(list.elementAtOrElse(3) { 42 }) // 42

val emptyList = emptyList<Int>()
println(emptyList.elementAtOrElse(0) { "no int" }) // no int 
   //sampleEnd
}