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

من موسوعة حسوب
اذهب إلى التنقل اذهب إلى البحث
(أنشأ الصفحة ب'<noinclude>{{DISPLAYTITLE: الدالة <code>lastIndexOf()‎</code> في لغة Kotlin}}</noinclude> تعيد الدالة<code>lastIndexOf()‎</code> العنصر ا...')
 
سطر 1: سطر 1:
 
<noinclude>{{DISPLAYTITLE: الدالة <code>lastIndexOf()‎</code> في لغة Kotlin}}</noinclude>
 
<noinclude>{{DISPLAYTITLE: الدالة <code>lastIndexOf()‎</code> في لغة Kotlin}}</noinclude>
تعيد الدالة<code>lastIndexOf()‎</code> العنصر الأخير من [[Kotlin/Array|المصفوفة]] أو [[Kotlin/collections|المجموعة]] أو [[Kotlin/List|اللائحة]] التي استُدعيت عبرها. في حال تمرير شرط منطقي <code>predicate</code> كوسيط فستعيد
+
تعيد الدالة<code>lastIndexOf()‎</code> آخر فهرس للعنصر الممرّر إلى [[Kotlin/Array|المصفوفة]] أو [[Kotlin/collections|المجموعة]] أو [[Kotlin/List|اللائحة]] التي استُدعيت عبرها. وإن لم يكن العنصر موجودًا  فستعيد ‎<code>-1‎</code>.
 
 
العنصر الأخير الذي يحقق ذلك الشرط.
 
 
 
في حال كانت [[Kotlin/Array|المصفوفة]] أو [[Kotlin/collections|المجموعة]] أو [[Kotlin/List|اللائحة]] التي استُدعيت عبرها الدالة<code>lastIndexOf()</code> فارغة أو لم يكن هناك أي عنصر يحقق الشرط المنطقي <code>predicate</code> فستطلق استثناءً <code>NoSuchElementException</code>.
 
 
==البنية العامة==
 
==البنية العامة==
 
يمكن استدعاء  الدالة<code>lastIndexOf()‎</code> على [[Kotlin/Array|المصفوفات]]:<syntaxhighlight lang="kotlin">
 
يمكن استدعاء  الدالة<code>lastIndexOf()‎</code> على [[Kotlin/Array|المصفوفات]]:<syntaxhighlight lang="kotlin">
fun <T> Array<out T>.last(): T
+
fun <T> Array<out T>.lastIndexOf(element: T): Int
fun ByteArray.last(): Byte
+
fun ByteArray.lastIndexOf(element: Byte): Int
fun ShortArray.last(): Short
+
fun ShortArray.lastIndexOf(element: Short): Int
fun IntArray.last(): Int  
+
fun IntArray.lastIndexOf(element: Int): Int  
fun LongArray.last(): Long
+
fun LongArray.lastIndexOf(element: Long): Int
fun FloatArray.last(): Float
+
fun FloatArray.lastIndexOf(element: Float): Int
fun DoubleArray.last(): Double
+
fun DoubleArray.lastIndexOf(element: Double): Int
fun BooleanArray.last(): Boolean
+
fun BooleanArray.lastIndexOf(element: Boolean): Int
fun CharArray.last(): Char
+
fun CharArray.lastIndexOf(element: Char): Int
  
</syntaxhighlight>يمكن تمرير وسيط <code>predicate</code> إلى الدالة<code>lastIndexOf()‎</code>:<syntaxhighlight lang="kotlin">
+
</syntaxhighlight>يمكن استدعاء  الدالة<code>lastIndexOf()‎</code> على [[Kotlin/collections|المجموعات]]:<syntaxhighlight lang="kotlin">
inline fun <T> Array<out T>.last(
+
fun <T> Iterable<T>.lastIndexOf(element: T): Int
    predicate: (T) -> Boolean
 
): T
 
inline fun ByteArray.last(predicate: (Byte) -> Boolean): Byte (source)
 
inline fun ShortArray.last(
 
    predicate: (Short) -> Boolean
 
): Short
 
inline fun IntArray.last(predicate: (Int) -> Boolean): Int (source)
 
inline fun LongArray.last(predicate: (Long) -> Boolean): Long (source)
 
inline fun FloatArray.last(
 
    predicate: (Float) -> Boolean
 
): Float
 
inline fun DoubleArray.last(
 
    predicate: (Double) -> Boolean
 
): Double
 
inline fun BooleanArray.last(
 
    predicate: (Boolean) -> Boolean
 
): Boolean
 
inline fun CharArray.last(predicate: (Char) -> Boolean): Char
 
inline fun <T> Iterable<T>.last(predicate: (T) -> Boolean): T
 
inline fun <T> List<T>.last(predicate: (T) -> Boolean): T
 
</syntaxhighlight>يمكن استدعاء  الدالة<code>last()‎</code> على [[Kotlin/collections|المجموعات]]:<syntaxhighlight lang="kotlin">
 
fun <T> Iterable<T>.last(): T
 
  
 
</syntaxhighlight>يمكن استدعاء  الدالة<code>lastIndexOf()‎</code> على [[Kotlin/List|اللوائح]]:<syntaxhighlight lang="kotlin">
 
</syntaxhighlight>يمكن استدعاء  الدالة<code>lastIndexOf()‎</code> على [[Kotlin/List|اللوائح]]:<syntaxhighlight lang="kotlin">
fun <T> List<T>.last(): T
+
fun <T> List<T>.lastIndexOf(element: T): Int
  
</syntaxhighlight>يُلاحَظ وجود الكلمة المفتاحية <code>inline</code> للدلالة على أن هذه الدالة مباشرة، وللمزيد من التفاصيل راجع <nowiki/>[[Kotlin/inline functions|توثيق الدوال المباشرة (inline functions)]].
+
</syntaxhighlight>
 
==القيم المٌعادة==
 
==القيم المٌعادة==
العنصر الأخير من [[Kotlin/Array|المصفوفة]] أو [[Kotlin/collections|المجموعة]] أو [[Kotlin/List|اللائحة]] التي استُدعيت عبرها. في حال تمرير شرط منطقي <code>predicate</code> كوسيط فستعيد
+
آخر فهرس للعنصر الممرّر إلى [[Kotlin/Array|المصفوفة]] أو [[Kotlin/collections|المجموعة]] أو [[Kotlin/List|اللائحة]] التي استُدعيت عبرها. وإن لم يكن العنصر موجودًا  فستعيد ‎<code>-1‎</code>.
 
 
العنصر الأخير الذي يحقق ذلك الشرط.
 
 
==أمثلة==
 
==أمثلة==
 
===استخدام الدالة <code>()last</code> مع المصفوفات: الحالة الأولى===
 
===استخدام الدالة <code>()last</code> مع المصفوفات: الحالة الأولى===
تعرف الشيفرة الآتية <nowiki/>[[Kotlin/Array|مصفوفة]] باسم <code>array</code>مكونة من ستة أعداد باستخدام الدالة <code>()arrayOf</code>، ثم تُعرّف الدالة المنطقية <code>()predicate</code> التي تحدد ما إذا كان العدد المُمرّر إليها أصغر من <code>3</code> ، ثم تستخدم الدالة <code>()last</code> لإيجاد العنصر الأخير في [[Kotlin/Array|المصفوفة]]<code>array</code> الذي يحقق الدالة <code>()predicate</code>، ثم تطبع الناتج:<syntaxhighlight lang="kotlin">
+
تعرف الشيفرة الآتية <nowiki/>[[Kotlin/Array|مصفوفة]] باسم <code>array</code>مكونة من ستة أعداد باستخدام الدالة <code>()arrayOf</code>، ثم تستخدم الدالة <code>()lastIndexOf</code> لإيجاد  آخر فهرس للعدد <code>2</code> في [[Kotlin/Array|المصفوفة]]<code>array</code>، ثم تطبع الناتج:<syntaxhighlight lang="kotlin">
 
fun main(args: Array<String>) {
 
fun main(args: Array<String>) {
val array = arrayOf(9, 2, 3, 8, 5, 6)
+
val array = arrayOf(9, 2, 3, 8, 2, 6)
val predicate  : (Int) -> Boolean = { it < 3 }
 
  
println(array.last(predicate)) // 2
+
println(array.lastIndexOf(2)) // 4
 
}
 
}
 
</syntaxhighlight>
 
</syntaxhighlight>
 
===استخدام الدالة <code>()lastIndexOf</code> مع المصفوفات: الحالة الثانية===
 
===استخدام الدالة <code>()lastIndexOf</code> مع المصفوفات: الحالة الثانية===
تعرف الشيفرة الآتية <nowiki/>[[Kotlin/Array|مصفوفة]] باسم <code>array</code>مكونة من ستة أعداد باستخدام الدالة <code>()arrayOf</code>، ثم تُعرّف الدالة المنطقية <code>()predicate</code> التي تحدد ما إذا كان العدد المُمرّر إليها أصغر من <code>0</code> ، ثم تستخدم الدالة <code>()lastIndexOf</code> لإيجاد العنصر الأخير في [[Kotlin/Array|المصفوفة]]<code>array</code> الذي يحقق الدالة <code>()predicate</code>، ولمّا كانت كل عناصر <code>array</code> لا تحقق ذلك فستطلق استثناءً <code>NoSuchElementException</code>، ثم تطبع الناتج:<syntaxhighlight lang="kotlin">
+
تعرف الشيفرة الآتية <nowiki/>[[Kotlin/Array|مصفوفة]] باسم <code>array</code>مكونة من ستة أعداد باستخدام الدالة <code>()arrayOf</code>، ثم تستخدم الدالة <code>()lastIndexOf</code> لإيجاد آخر فهرس للعدد <code>78</code> في [[Kotlin/Array|المصفوفة]]<code>array</code>، ولمّا كان هذا العدد غير موجود في  <code>array</code> فستعيد الدالة <code>()lastIndexOf</code> العدد ‎<code>-1‎</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, 8, 2, 6)
val predicate  : (Int) -> Boolean = { it < 0 }
 
  
println(array.last(predicate)) // إطلاق استثناء
+
println(array.lastIndexOf(78)) // -1
 
}
 
}
 
</syntaxhighlight>
 
</syntaxhighlight>
 
==انظر أيضًا==
 
==انظر أيضًا==
*<code>[[Kotlin/collections/lastIndexOf|lastIndexOf()]]</code>‎: تعيد آخر فهرس للعنصر الممرّر في [[Kotlin/Array|المصفوفة]] أو [[Kotlin/collections|المجموعة]] التي استُدعيت عبرها. وإن لم يكن العنصر موجودًا  فستعيد ‎<code>-1‎</code>.
+
*<code>[[Kotlin/collections/last|last()]]</code>‎: تعيد العنصر الأخير من [[Kotlin/Array|المصفوفة]] أو [[Kotlin/collections|المجموعة]] أو [[Kotlin/List|اللائحة]] التي استُدعيت عبرها. في حال تمرير شرط منطقي <code>predicate</code> كوسيط فستعيد العنصر الأخير الذي يحقق ذلك الشرط.
 
==مصادر==
 
==مصادر==
*[https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/last.html الدالة  lastIndexOf()‎ في التوثيق الرسميّ للمكتبة القياسيّة في لغة Kotlin.]
+
*[https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/last-index-of.html الدالة  lastIndexOf()‎ في التوثيق الرسميّ للمكتبة القياسيّة في لغة Kotlin.]
 
[[تصنيف:Kotlin]]
 
[[تصنيف:Kotlin]]
 
[[تصنيف:Kotlin Functions]]
 
[[تصنيف:Kotlin Functions]]

مراجعة 14:21، 29 مايو 2018

تعيد الدالةlastIndexOf()‎ آخر فهرس للعنصر الممرّر إلى المصفوفة أو المجموعة أو اللائحة التي استُدعيت عبرها. وإن لم يكن العنصر موجودًا فستعيد ‎-1‎.

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

يمكن استدعاء الدالةlastIndexOf()‎ على المصفوفات:

fun <T> Array<out T>.lastIndexOf(element: T): Int 
fun ByteArray.lastIndexOf(element: Byte): Int 
fun ShortArray.lastIndexOf(element: Short): Int 
fun IntArray.lastIndexOf(element: Int): Int 
fun LongArray.lastIndexOf(element: Long): Int 
fun FloatArray.lastIndexOf(element: Float): Int 
fun DoubleArray.lastIndexOf(element: Double): Int 
fun BooleanArray.lastIndexOf(element: Boolean): Int 
fun CharArray.lastIndexOf(element: Char): Int

يمكن استدعاء الدالةlastIndexOf()‎ على المجموعات:

fun <T> Iterable<T>.lastIndexOf(element: T): Int

يمكن استدعاء الدالةlastIndexOf()‎ على اللوائح:

fun <T> List<T>.lastIndexOf(element: T): Int

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

آخر فهرس للعنصر الممرّر إلى المصفوفة أو المجموعة أو اللائحة التي استُدعيت عبرها. وإن لم يكن العنصر موجودًا فستعيد ‎-1‎.

أمثلة

استخدام الدالة ()last مع المصفوفات: الحالة الأولى

تعرف الشيفرة الآتية مصفوفة باسم arrayمكونة من ستة أعداد باستخدام الدالة ()arrayOf، ثم تستخدم الدالة ()lastIndexOf لإيجاد آخر فهرس للعدد 2 في المصفوفةarray، ثم تطبع الناتج:

fun main(args: Array<String>) {
val array = arrayOf(9, 2, 3, 8, 2, 6)

println(array.lastIndexOf(2)) // 4
}

استخدام الدالة ()lastIndexOf مع المصفوفات: الحالة الثانية

تعرف الشيفرة الآتية مصفوفة باسم arrayمكونة من ستة أعداد باستخدام الدالة ()arrayOf، ثم تستخدم الدالة ()lastIndexOf لإيجاد آخر فهرس للعدد 78 في المصفوفةarray، ولمّا كان هذا العدد غير موجود في array فستعيد الدالة ()lastIndexOf العدد ‎-1‎، ثم تطبع الناتج:

fun main(args: Array<String>) {
val array = arrayOf(9, 2, 3, 8, 2, 6)

println(array.lastIndexOf(78)) // -1
}

انظر أيضًا

  • last()‎: تعيد العنصر الأخير من المصفوفة أو المجموعة أو اللائحة التي استُدعيت عبرها. في حال تمرير شرط منطقي predicate كوسيط فستعيد العنصر الأخير الذي يحقق ذلك الشرط.

مصادر