الفرق بين المراجعتين ل"Kotlin/collections/dropLastWhile"

من موسوعة حسوب
اذهب إلى التنقل اذهب إلى البحث
سطر 6: سطر 6:
 
inline fun <T> Array<out T>.dropLastWhile(
 
inline fun <T> Array<out T>.dropLastWhile(
 
     predicate: (T) -> Boolean
 
     predicate: (T) -> Boolean
): List<T> (source)
+
): List<T>
 
inline fun ByteArray.dropLastWhile(
 
inline fun ByteArray.dropLastWhile(
 
     predicate: (Byte) -> Boolean
 
     predicate: (Byte) -> Boolean

مراجعة 05:18، 29 أغسطس 2018

تعيد الدالة 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]
}

انظر أيضًا

مصادر