الفرق بين المراجعتين لصفحة: «Kotlin/collections/findLast»
لا ملخص تعديل |
جميل-بيلوني (نقاش | مساهمات) ط مراجعة وتدقيق. |
||
سطر 1: | سطر 1: | ||
تبحث الدالة <code>findLast()</code> على عنصر محدَّد ضمن عناصر [[Kotlin/Array|المصفوفة]] أو [[Kotlin/collections|المجموعة]] التي استُدعيت معها ثمَّ تعيد آخر ظهور له. | |||
==البنية العامة== | ==البنية العامة== | ||
<syntaxhighlight lang="kotlin"> | <syntaxhighlight lang="kotlin"> | ||
سطر 37: | سطر 36: | ||
): T? | ): T? | ||
</syntaxhighlight> | </syntaxhighlight>وجود الكلمة المفتاحية <code>inline</code> يدل على أنَّ هذه الدالة مباشرة (للمزيد من التفاصيل، راجع صفحة [[Kotlin/inline functions|الدوال المباشرة (inline functions)]]). | ||
==القيم المٌعادة== | ==القيم المٌعادة== | ||
يعاد آخر ظهور للعنصر المبحوث عنه ضمن عناصر [[Kotlin/Array|المصفوفة]] أو [[Kotlin/collections|المجموعة]] المعطاة والذي يحقق الشرط المنطقي <code>predicate</code> المعطى أيضًا، أو القيمة <code>null</code> إن لم يُعثر على أي عنصر يحقق ذلك الشرط. | |||
==أمثلة== | ==أمثلة== | ||
===استخدام الدالة <code>()findLast</code> مع المصفوفات: | ===استخدام الدالة <code>()findLast</code> مع المصفوفات: حالة العثور على عنصر=== | ||
تعرف الشيفرة الآتية <nowiki/>[[Kotlin/Array|مصفوفة]] باسم <code>array</code> | تعرف الشيفرة الآتية <nowiki/>[[Kotlin/Array|مصفوفة]] باسم <code>array</code> باستخدام الدالة <code>()arrayOf</code>، ثمَّ تُعرّف الدالة المنطقيَّة <code>()predicate</code> التي تحدد ما إذا كان العدد المُمرّر إليها أصغر من 3، ثم تستخدم الدالة <code>()findLast</code> للبحث عن آخر عنصر يحقق هذا الشرط:<syntaxhighlight lang="kotlin"> | ||
fun main(args: Array<String>) { | fun main(args: Array<String>) { | ||
val array = arrayOf(9, 2, 3, | val array = arrayOf(9, 2, 3, 0, 5, 1) | ||
val predicate : (Int) -> Boolean = { it < 3 } | val predicate : (Int) -> Boolean = { it < 3 } | ||
println(array.findLast(predicate)) // | println(array.findLast(predicate)) // 1 | ||
} | } | ||
</syntaxhighlight> | </syntaxhighlight> | ||
===استخدام الدالة <code>()findLast</code> مع المصفوفات: | ===استخدام الدالة <code>()findLast</code> مع المصفوفات: حالة عدم العثور على أي عنصر=== | ||
تعرف الشيفرة الآتية <nowiki/>[[Kotlin/Array|مصفوفة]] باسم <code>array</code> | تعرف الشيفرة الآتية <nowiki/>[[Kotlin/Array|مصفوفة]] باسم <code>array</code> باستخدام الدالة <code>()arrayOf</code>، ثم تستخدم الدالة <code>()findLast</code> لإيجاد العنصر الأخير الذي يساوي القيمة 6. ولمّا كانت كل عناصر <code>array</code> لا تحقق ذلك، فستُعاد القيمة <code>null</code>:<syntaxhighlight lang="kotlin"> | ||
fun main(args: Array<String>) { | fun main(args: Array<String>) { | ||
val array = arrayOf(9, 2, 3, 2, 5, 1) | val array = arrayOf(9, 2, 3, 2, 5, 1) | ||
val predicate | val predicate: (Int) -> Boolean = { it == 6 } | ||
println(array. | println(array.findLast(predicate)) // null | ||
} | } | ||
</syntaxhighlight> | </syntaxhighlight> | ||
==انظر أيضًا== | ==انظر أيضًا== | ||
*<code>[[Kotlin/collections/find|find()]]</code>: | *الدالة <code>[[Kotlin/collections/find|find()]]</code>: تبحث على عنصر محدَّد ضمن عناصر [[Kotlin/Array|المصفوفة]] أو [[Kotlin/collections|المجموعة]] التي استُدعيت معها ثمَّ تعيد أول ظهور له. | ||
*الدالة <code>[[Kotlin/collections/first|first()]]</code>: تجلب أول عنصر من عناصر [[Kotlin/Array|المصفوفة]] أو [[Kotlin/collections|المجموعة]] التي استُدعيت معها إن لم يمرر إليها أي شيء، أو أول عنصر يحق شرطًا معيَّنًا في حال تمرير دالة منطقية إليها. | |||
* الدالة <code>[[Kotlin/collections/filter|filter()]]</code>: ترشِّح عناصر <nowiki/>[[Kotlin/Array|المصفوفة]] أو <nowiki/>[[Kotlin/collections|المجموعة]] أو أزواج الخرائط المعطاة التي تحقِّق شرطًا معيَّنًا ثمّ تعيدها. | |||
==مصادر== | ==مصادر== | ||
*[https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/find-last.html الدالة | *[https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/find-last.html صفحة الدالة findLast() في التوثيق الرسميّ للمكتبة القياسيّة في لغة Kotlin.]<noinclude>{{DISPLAYTITLE: الدالة <code>findLast()</code> في Kotlin}}</noinclude> | ||
[[تصنيف:Kotlin]] | [[تصنيف:Kotlin]] | ||
[[تصنيف:Kotlin Functions]] | [[تصنيف:Kotlin Functions]] |
مراجعة 09:28، 23 يوليو 2018
تبحث الدالة findLast()
على عنصر محدَّد ضمن عناصر المصفوفة أو المجموعة التي استُدعيت معها ثمَّ تعيد آخر ظهور له.
البنية العامة
inline fun <T> Array<out T>.findLast(
predicate: (T) -> Boolean
): T?
inline fun ByteArray.findLast(
predicate: (Byte) -> Boolean
): Byte?
inline fun ShortArray.findLast(
predicate: (Short) -> Boolean
): Short?
inline fun IntArray.findLast(
predicate: (Int) -> Boolean
): Int?
inline fun LongArray.findLast(
predicate: (Long) -> Boolean
): Long?
inline fun FloatArray.findLast(
predicate: (Float) -> Boolean
): Float?
inline fun DoubleArray.findLast(
predicate: (Double) -> Boolean
): Double?
inline fun BooleanArray.findLast(
predicate: (Boolean) -> Boolean
): Boolean?
inline fun CharArray.findLast(
predicate: (Char) -> Boolean
): Char?
inline fun <T> Iterable<T>.findLast(
predicate: (T) -> Boolean
): T?
inline fun <T> List<T>.findLast(
predicate: (T) -> Boolean
): T?
وجود الكلمة المفتاحية inline
يدل على أنَّ هذه الدالة مباشرة (للمزيد من التفاصيل، راجع صفحة الدوال المباشرة (inline functions)).
القيم المٌعادة
يعاد آخر ظهور للعنصر المبحوث عنه ضمن عناصر المصفوفة أو المجموعة المعطاة والذي يحقق الشرط المنطقي predicate
المعطى أيضًا، أو القيمة null
إن لم يُعثر على أي عنصر يحقق ذلك الشرط.
أمثلة
استخدام الدالة ()findLast
مع المصفوفات: حالة العثور على عنصر
تعرف الشيفرة الآتية مصفوفة باسم array
باستخدام الدالة ()arrayOf
، ثمَّ تُعرّف الدالة المنطقيَّة ()predicate
التي تحدد ما إذا كان العدد المُمرّر إليها أصغر من 3، ثم تستخدم الدالة ()findLast
للبحث عن آخر عنصر يحقق هذا الشرط:
fun main(args: Array<String>) {
val array = arrayOf(9, 2, 3, 0, 5, 1)
val predicate : (Int) -> Boolean = { it < 3 }
println(array.findLast(predicate)) // 1
}
استخدام الدالة ()findLast
مع المصفوفات: حالة عدم العثور على أي عنصر
تعرف الشيفرة الآتية مصفوفة باسم array
باستخدام الدالة ()arrayOf
، ثم تستخدم الدالة ()findLast
لإيجاد العنصر الأخير الذي يساوي القيمة 6. ولمّا كانت كل عناصر array
لا تحقق ذلك، فستُعاد القيمة null
:
fun main(args: Array<String>) {
val array = arrayOf(9, 2, 3, 2, 5, 1)
val predicate: (Int) -> Boolean = { it == 6 }
println(array.findLast(predicate)) // null
}
انظر أيضًا
- الدالة
find()
: تبحث على عنصر محدَّد ضمن عناصر المصفوفة أو المجموعة التي استُدعيت معها ثمَّ تعيد أول ظهور له. - الدالة
first()
: تجلب أول عنصر من عناصر المصفوفة أو المجموعة التي استُدعيت معها إن لم يمرر إليها أي شيء، أو أول عنصر يحق شرطًا معيَّنًا في حال تمرير دالة منطقية إليها. - الدالة
filter()
: ترشِّح عناصر المصفوفة أو المجموعة أو أزواج الخرائط المعطاة التي تحقِّق شرطًا معيَّنًا ثمّ تعيدها.