الفرق بين المراجعتين لصفحة: «Kotlin/collections/takeLastWhile»

من موسوعة حسوب
ط استبدال النص - 'Kotlin Functions' ب'Kotlin Function'
طلا ملخص تعديل
 
سطر 1: سطر 1:
<noinclude>{{DISPLAYTITLE: الدالة <code>takeLastWhile()‎</code> في Kotlin}}</noinclude>
<noinclude>{{DISPLAYTITLE: الدالة <code>takeLastWhile()‎</code> في Kotlin}}</noinclude>
تجلب الدالة <code>takeLastWhile()‎</code> آخر عناصر محققة لشرطٍ محدَّدٍ من [[Kotlin/Array|المصفوفة]] أو [[Kotlin/List|القائمة]] التي استُدعيت معها.  
تجلب الدالة <code>takeLastWhile()‎</code> آخر عناصر محققة لشرطٍ محدَّدٍ من [[Kotlin/Array|المصفوفة]] أو [[Kotlin/List|القائمة]] التي استُدعيت معها.  
==البنية العامة==
==البنية العامة==
<syntaxhighlight lang="kotlin">
<syntaxhighlight lang="kotlin">
سطر 35: سطر 35:


</syntaxhighlight>يُلاحَظ وجود الكلمة المفتاحية <code>inline</code> التي تدل على أن هذه الدالة مباشرة (للمزيد من التفاصيل، راجع صفحة [[Kotlin/inline functions|الدوال المباشرة (inline functions)]]).
</syntaxhighlight>يُلاحَظ وجود الكلمة المفتاحية <code>inline</code> التي تدل على أن هذه الدالة مباشرة (للمزيد من التفاصيل، راجع صفحة [[Kotlin/inline functions|الدوال المباشرة (inline functions)]]).
== المعاملات ==
=== <code>predicate</code> ===
دالة يراد تطبيقها على كل عنصر من عناصر [[Kotlin/Array|المصفوفة]] أو [[Kotlin/List|القائمة]] المعطاة، إذ يمرر إليها قيمة العنصر ثم تعيد القيمة المنطقية المقابلة له.
==القيمة المعادة==
==القيمة المعادة==
تعاد [[Kotlin/List|قائمة]] تحوي العناصر الأخيرة المحققة للشرط <code>predicate</code> المعطى من [[Kotlin/Array|المصفوفة]] أو [[Kotlin/List|القائمة]] المعطاة.
تعاد [[Kotlin/List|قائمة]] تحوي العناصر الأخيرة المحققة للشرط <code>predicate</code> المعطى من [[Kotlin/Array|المصفوفة]] أو [[Kotlin/List|القائمة]] المعطاة.
سطر 52: سطر 58:
[[تصنيف:Kotlin]]
[[تصنيف:Kotlin]]
[[تصنيف:Kotlin Function]]
[[تصنيف:Kotlin Function]]
[[تصنيف:Kotlin Collection]]

المراجعة الحالية بتاريخ 11:37، 8 سبتمبر 2018

تجلب الدالة 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

دالة يراد تطبيقها على كل عنصر من عناصر المصفوفة أو القائمة المعطاة، إذ يمرر إليها قيمة العنصر ثم تعيد القيمة المنطقية المقابلة له.

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

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

أمثلة

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

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

انظر أيضًا

مصادر