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

من موسوعة حسوب
اذهب إلى التنقل اذهب إلى البحث
ط
 
(مراجعتان متوسطتان بواسطة مستخدمين اثنين آخرين غير معروضتين)
سطر 1: سطر 1:
<noinclude>{{DISPLAYTITLE: الدالة <code>takeLastWhile()‎</code> في لغة Kotlin}}</noinclude>
+
<noinclude>{{DISPLAYTITLE: الدالة <code>takeLastWhile()‎</code> في Kotlin}}</noinclude>
تعيد الدالة<code>takeLastWhile()‎</code> [[Kotlin/List|لائحة]] تضم آخر عناصر [[Kotlin/Array|المصفوفة]] أو [[Kotlin/List|اللائحة]] التي استُدعيت عبرها والتي تحقق الشرط المنطقي المُمرّر <code>predicate</code>.  
+
تجلب الدالة <code>takeLastWhile()‎</code> آخر عناصر محققة لشرطٍ محدَّدٍ من [[Kotlin/Array|المصفوفة]] أو [[Kotlin/List|القائمة]] التي استُدعيت معها.  
 
 
 
==البنية العامة==
 
==البنية العامة==
<nowiki/><nowiki/><syntaxhighlight lang="kotlin">
+
<syntaxhighlight lang="kotlin">
 
inline fun <T> Array<out T>.takeLastWhile(
 
inline fun <T> Array<out T>.takeLastWhile(
 
     predicate: (T) -> Boolean
 
     predicate: (T) -> Boolean
سطر 35: سطر 34:
 
): List<T>  
 
): List<T>  
  
</syntaxhighlight>يُلاحَظ وجود الكلمة المفتاحية <code>inline</code> للدلالة على أن هذه الدالة مباشرة، وللمزيد من التفاصيل راجع <nowiki/>[[Kotlin/inline functions|توثيق الدوال المباشرة (inline functions)]].
+
</syntaxhighlight>يُلاحَظ وجود الكلمة المفتاحية <code>inline</code> التي تدل على أن هذه الدالة مباشرة (للمزيد من التفاصيل، راجع صفحة [[Kotlin/inline functions|الدوال المباشرة (inline functions)]]).
  
== القيمة المُعادة ==
+
== المعاملات ==
[[Kotlin/List|لائحة]] تضم آخر  عناصر [[Kotlin/Array|المصفوفة]] أو  [[Kotlin/List|اللائحة]] والتي تحقق الشرط المنطقي المُمرّر <code>predicate</code>.
 
  
 +
=== <code>predicate</code> ===
 +
دالة يراد تطبيقها على كل عنصر من عناصر [[Kotlin/Array|المصفوفة]] أو [[Kotlin/List|القائمة]] المعطاة، إذ يمرر إليها قيمة العنصر ثم تعيد القيمة المنطقية المقابلة له.
 +
 +
==القيمة المعادة==
 +
تعاد [[Kotlin/List|قائمة]] تحوي العناصر الأخيرة المحققة للشرط <code>predicate</code> المعطى من [[Kotlin/Array|المصفوفة]] أو [[Kotlin/List|القائمة]] المعطاة.
 
==أمثلة==
 
==أمثلة==
===استخدام الدالة <code>()takeLastWhile</code> مع المصفوفات===
+
استعمال الدالة <code>()takeLastWhile</code> لجلب العناصر الأخيرة الأكبر من الحرف 'w' من قائمة:<syntaxhighlight lang="kotlin">
تعرف الشيفرة الآتية  <nowiki/>[[Kotlin/Array|مصفوفة]] <nowiki/>باسم <code>array</code> مكونة من ستة أعداد باستخدام الدالة <code>()arrayOf‎</code>، <nowiki/>ثم تستخدم الدالة<code>()takeLastWhile</code>  على <code>array</code> مع تمرير دالة منطقية كوسيط، ثم تطبع الناتج:<syntaxhighlight lang="kotlin">
 
 
fun main(args: Array<String>) {
 
fun main(args: Array<String>) {
val array = arrayOf(3, 5, 7, 2 , 6, 9)
+
    val chars = ('a'..'z').toList()
      
+
     println(chars.takeLastWhile { it > 'w' }) // [x, y, z]
println(array.takeLastWhile { it > 4 } ) // [6, 9]
 
 
}
 
}
 
</syntaxhighlight>
 
</syntaxhighlight>
==أنظر أيضًا==
+
==انظر أيضًا==
* <code>[[Kotlin/collections/take|take()]]</code>‎ : تعيد [[Kotlin/List|لائحة]] تضم  <code>n</code> من أولى العناصر الموجودة في [[Kotlin/Array|المصفوفة]] أو [[Kotlin/Iterable|المجموعة التكرارية]] التي استُدعيت عبرها.
+
*الدالة <code>[[Kotlin/collections/take|take()]]</code>: تجلب أول <code>n</code> عنصر من [[Kotlin/Array|المصفوفة]] أو [[Kotlin/Iterable|المجموعة التكرارية]] التي استُدعيت معها وتضعها في قائمة. 
*  <code>[[Kotlin/collections/takeLast|takeLast()]]</code>‎ :تعيد [[Kotlin/List|لائحة]] تضم آخر <code>n</code> من العناصر الموجودة في [[Kotlin/Array|المصفوفة]] أو [[Kotlin/Iterable|المجموعة التكرارية]] التي استُدعيت عبرها
+
*الدالة <code>[[Kotlin/collections/takeLast|takeLast()]]</code>: تجلب آخر <code>n</code> عنصر من [[Kotlin/Array|المصفوفة]] أو [[Kotlin/Iterable|المجموعة التكرارية]] التي استُدعيت معها وتضعها في قائمة.  
 
+
*الدالة <code>[[Kotlin/collections/takeWhile|takeWhile()‎]]</code>: تجلب أول عناصر محققة لشرطٍ محدَّدٍ من [[Kotlin/Array|المصفوفة]] أو [[Kotlin/List|القائمة]] التي استُدعيت معها
 
==مصادر==
 
==مصادر==
*[https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/take-last-while.html الدالة  takeLastWhile()‎ في التوثيق الرسميّ للمكتبة القياسيّة في لغة Kotlin.]
+
*[https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/take-last-while.html صفحة الدالة takeLastWhile()‎ في التوثيق الرسميّ للمكتبة القياسيّة في لغة Kotlin.]
 
[[تصنيف:Kotlin]]
 
[[تصنيف:Kotlin]]
[[تصنيف:Kotlin Functions]]
+
[[تصنيف: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]
}

انظر أيضًا

مصادر