dropLastWhile

inline fun <T> Array<out T>.dropLastWhile(predicate: (T) -> Boolean): List<T>(source)
inline fun ByteArray.dropLastWhile(predicate: (Byte) -> Boolean): List<Byte>(source)
inline fun ShortArray.dropLastWhile(predicate: (Short) -> Boolean): List<Short>(source)
inline fun IntArray.dropLastWhile(predicate: (Int) -> Boolean): List<Int>(source)
inline fun LongArray.dropLastWhile(predicate: (Long) -> Boolean): List<Long>(source)
inline fun FloatArray.dropLastWhile(predicate: (Float) -> Boolean): List<Float>(source)
inline fun DoubleArray.dropLastWhile(predicate: (Double) -> Boolean): List<Double>(source)
inline fun CharArray.dropLastWhile(predicate: (Char) -> Boolean): List<Char>(source)
inline fun <T> List<T>.dropLastWhile(predicate: (T) -> Boolean): List<T>(source)

Returns a list containing all elements except last elements that satisfy the given predicate.

Since Kotlin

1.0

Samples

import kotlin.test.*

fun main() { 
   //sampleStart 
   val chars = ('a'..'z').toList()
println(chars.drop(23)) // [x, y, z]
println(chars.dropLast(23)) // [a, b, c]
println(chars.dropWhile { it < 'x' }) // [x, y, z]
println(chars.dropLastWhile { it > 'c' }) // [a, b, c] 
   //sampleEnd
}

Returns a list containing all elements except last elements that satisfy the given predicate.

Since Kotlin

1.3

Samples

import kotlin.test.*

fun main() { 
   //sampleStart 
   val chars = ('a'..'z').toList()
println(chars.drop(23)) // [x, y, z]
println(chars.dropLast(23)) // [a, b, c]
println(chars.dropWhile { it < 'x' }) // [x, y, z]
println(chars.dropLastWhile { it > 'c' }) // [a, b, c] 
   //sampleEnd
}