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

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

مراجعة 15:45، 27 مايو 2018

تعيد الدالة indexOfFirst()‎ فهرس أول ظهور للعنصر المُمرّر إليها في المصفوفة أو المجموعة أو اللائحة التي استُدعيت عبرها والذي يحقق الشرط المنطقي المُمرّر predicate، أو ‎-1‎ إن لم يكن هناك أي عنصر يحقق ذلك.

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

يمكن استدعاء الدالة indexOfFirst()‎ عبر المصفوفات:

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

يمكن استدعاء الدالة indexOfFirst()‎ عبر المجموعات:

inline fun <T> Iterable<T>.indexOfFirst(
    predicate: (T) -> Boolean
): Int

يمكن استدعاء الدالة indexOfFirst()‎ عبر اللوائح:

inline fun <T> List<T>.indexOfFirst(
    predicate: (T) -> Boolean
): Int

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

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

فهرس أول ظهور للعنصر المُمرّر إليها في المصفوفة أو المجموعة أو اللائحة التي استُدعيت عبرها والذي يحقق الشرط المنطقي المُمرّر predicate، أو ‎-1‎ إن لم يكن هناك أي عنصر يحقق ذلك.

أمثلة

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

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

fun main(args: Array<String>) {
    val array = arrayOf(1,2,3,4,5,6)

    print(array.indexOfFirst { it > 2 }) // 2
}

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

تعرف الشيفرة الآتية مصفوفة باسم array مكونة من ستة أعداد باستخدام الدالة ()arrayOf، ثم تستخدم الدالة  ()indexOfFirst  للحصول على فهرس أول ظهور لعدد أكبر من 8، ولمّا كانت كل عناصر المصفوفة array أصغر من العدد 8، فستعيد الدالة ()indexOfFirst القيمة ‎-1‎‎:

fun main(args: Array<String>) {
    val array = arrayOf(1,2,3,4,5,6)

    print(array.indexOfFirst { it > 8 }) // -1
}

انظر أيضًا

  • indexOf()‎: تعيد فهرس أول ظهور للعنصر المُمرّر إليها في المصفوفة أو المجموعة أو اللائحة التي استُدعيت عبرها ، أو ‎-1‎ إن كان العنصر المُمرّر غير موجود.

مصادر