الدالة dropLastWhile()‎ في Kotlin

من موسوعة حسوب

تعيد الدالة dropLastWhile()‎ قائمةً تحوي جميع عناصر المصفوفة أو المجموعة التي استُدعيت معها باستثناء العناصر الأخيرة التي تحقق شرطًا معيَّنًا.

البنية العامة

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

القيم المعادة

تُعاد قائمة تحوي جميع عناصر المصفوفة أو المجموعة المعطاة باستثناء العناصر الأخيرة التي تعيد القيمة true عند تطبيق الدالة predicate المُمرّرة عليها.

أمثلة

استخدام الدالة ()dropLastWhile مع المصفوفات

تعرِّف الشيفرة الآتية مصفوفة باسم array باستخدام الدالة ()arrayOf ثمَّ تعرف الدالة predicate المنطقية لاستعمالها مع الدالة ()dropLastWhile لحذف العناصر الأخيرة التي تزيد قيمتها عن 3:

fun main(args: Array<String>) {
    val array = arrayOf(1,2,3,4,5,6)
    val predicate: (Int) -> Boolean = { it > 3}
    println(array.dropLastWhile(predicate)) // [1, 2, 3]
}

انظر أيضًا

مصادر