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

من موسوعة حسوب
مراجعة 11:36، 30 أغسطس 2018 بواسطة عبد اللطيف ايمش (نقاش | مساهمات) (استبدال النص - 'Kotlin Functions' ب'Kotlin Function')

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

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

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

يُلاحَظ وجود الكلمة المفتاحية inline التي تدل على أن هذه الدالة مباشرة (للمزيد من التفاصيل، راجع صفحة الدوال المباشرة (inline functions)).

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

تعاد قائمة تحوي العناصر الأخيرة المحققة للشرط predicate المعطى من المصفوفة أو القائمة المعطاة.

أمثلة

استعمال الدالة ()takeLastWhile لجلب العناصر الأخيرة الأكبر من الحرف 'w' من قائمة:

fun main(args: Array<String>) {
    val chars = ('a'..'z').toList()
    println(chars.takeLastWhile { it > 'w' }) // [x, y, z]
}

انظر أيضًا

مصادر