الفرق بين المراجعتين ل"Kotlin/jvm/isArrayOf"

من موسوعة حسوب
اذهب إلى التنقل اذهب إلى البحث
(أنشأ الصفحة ب'<noinclude>{{DISPLAYTITLE: الدالة isArrayOf()‎ في لغة Kotlin}}</noinclude> تعيد الدالة <code>isArrayOf()‎</code> فهرس أول ظهور للع...')
 
ط
 
(7 مراجعات متوسطة بواسطة 3 مستخدمين غير معروضة)
سطر 1: سطر 1:
<noinclude>{{DISPLAYTITLE: الدالة isArrayOf()‎ في لغة Kotlin}}</noinclude>
+
<noinclude>{{DISPLAYTITLE: الدالة <code>isArrayOf()‎</code> في Kotlin}}</noinclude>
تعيد الدالة <code>isArrayOf()‎</code> فهرس أول ظهور للعنصر المُمرّر إليها في [[Kotlin/Array|المصفوفة]] أو [[Kotlin/collections|المجموعة]] أو [[Kotlin/List|اللائحة]] التي استُدعيت عبرها والذي يحقق الشرط المنطقي المُمرّر <code>predicate</code>، أو ‎<code>-1‎</code> إن لم يكن هناك أي عنصر يحقق ذلك.
+
تتحقَّق الدالة <code>isArrayOf()‎</code> من حواية [[Kotlin/Array|المصفوفة]] التي استُدعيت معها عناصرَ من نوعٍ محدَّد.
 
== البنية العامة ==
 
== البنية العامة ==
يمكن استدعاء  الدالة <code>indexOfFirst()‎</code> عبر [[Kotlin/Array|المصفوفات]]:<syntaxhighlight lang="kotlin">
+
<syntaxhighlight lang="kotlin">
inline fun <T> Array<out T>.indexOfFirst(
+
fun <reified T : Any> Array<*>.isArrayOf(): Boolean
    predicate: (T) -> Boolean
+
</syntaxhighlight>يدل استخدام الكلمة المفتاحية <code>[[Kotlin/inline functions#.D8.A7.D9.84.D9.85.D8.AA.D8.AD.D9.88.D9.91.D9.84.D8.A7.D8.AA .D9.85.D9.86 .D8.A7.D9.84.D9.86.D9.88.D8.B9 reified.C2.A0|reified]]</code> على إمكانية الوصول إلى نوعٍ مُمرَّر كمتحولٍ وسيطٍ (راجع <nowiki/>[[Kotlin/inline functions#.D8.A7.D9.84.D9.85.D8.AA.D8.AD.D9.88.D9.91.D9.84.D8.A7.D8.AA .D9.85.D9.86 .D8.A7.D9.84.D9.86.D9.88.D8.B9 reified.C2.A0|توثيق reified]] للمزيد من التفاصيل).
): 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
 
 
 
</syntaxhighlight>يمكن استدعاء  الدالة <code>indexOfFirst()‎</code> عبر [[Kotlin/collections|المجموعات]]:<syntaxhighlight lang="kotlin">
 
inline fun <T> Iterable<T>.indexOfFirst(
 
    predicate: (T) -> Boolean
 
): Int
 
</syntaxhighlight>يمكن استدعاء  الدالة <code>indexOfFirst()‎</code> عبر [[Kotlin/List|اللوائح]]:<syntaxhighlight lang="kotlin">
 
inline fun <T> List<T>.indexOfFirst(
 
    predicate: (T) -> Boolean
 
): Int
 
</syntaxhighlight>يُلاحَظ وجود الكلمة المفتاحية <code>inline</code> للدلالة على أن هذه الدالة مباشرة، وللمزيد من التفاصيل راجع <nowiki/>[[Kotlin/inline functions|توثيق الدوال المباشرة (inline functions)]].
 
 
 
 
== القيم المعادة ==
 
== القيم المعادة ==
فهرس أول ظهور للعنصر المُمرّر إلى الدالة <code>isArrayOf()‎</code> في [[Kotlin/Array|المصفوفة]] أو [[Kotlin/collections|المجموعة]] أو [[Kotlin/List|اللائحة]] التي استُدعيت عبرها والذي يحقق الشرط المنطقي المُمرّر <code>predicate</code>، أو ‎<code>-1‎</code> إن لم يكن هناك أي عنصر يحقق ذلك.
+
تُعاد القيمة المنطقية <code>true</code> إن كانت [[Kotlin/Array|المصفوفة]] المعطاة تحوي النوع المعطى أو القيمة <code>false</code> خلاف ذلك.
 
== أمثلة ==
 
== أمثلة ==
 
+
مثالٌ<nowiki/> على استعمال الدالة  <code>()isArrayOf</code>:<syntaxhighlight lang="kotlin">
=== استخدام الدالة<code>isArrayOf()‎</code> على مصفوفة: الحالة الأولى ===
 
تعرف الشيفرة الآتية <nowiki/>[[Kotlin/Array|مصفوفة]] باسم <code>array</code> مكونة من ستة أعداد باستخدام الدالة <code>()arrayOf</code>، ثم تستخدم الدالة  <code>()isArrayOf</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)
+
     var numbers = Array(6) { i -> i }
  
     print(array.indexOfFirst { it > 2 }) // 2
+
     println(numbers.isArrayOf<Int>()) // true
 +
    println(numbers.isArrayOf<String>()) // false
 
}
 
}
 
</syntaxhighlight>
 
</syntaxhighlight>
  
=== استخدام الدالة<code>indexOfFirst()‎</code> على مصفوفة: الحالة الثانية ===
+
== <nowiki/><nowiki/><nowiki/>انظر أيضًا ==
تعرف الشيفرة الآتية <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">
+
* الدالة <code>[[Kotlin/collections/isEmpty|isEmpty()‎]]</code>: تتحقَّق إن كانت [[Kotlin/Array|المصفوفة]] التي استُدعيت معها فارغةً أم لا.
fun main(args: Array<String>) {
+
* الدالة <code>[[Kotlin/collections/all|all()‎]]</code>: تتحقق إن كانت كافّة عناصر المصفوفة أو المجموعة (collection) التي استُدعيت معها تطابق شرطًا محدَّدًا.
    val array = arrayOf(1,2,3,4,5,6)
+
* الدالة <code>[[Kotlin/collections/none|none()]]</code>: تتحقق إن كانت <nowiki/>[[Kotlin/Array|المصفوفة]] أو <nowiki/>[[Kotlin/collections|المجموعة]] أو الخريطة التي استدعيت معها فارغةً، أو إن لم يكن هنالك أي عنصر من تلك العناصر محقِّقًا لشرط معين.
 
 
    print(array.indexOfFirst { it > 8 }) // -1
 
}
 
</syntaxhighlight>
 
== انظر أيضًا ==
 
* <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-first.html الدالة isArrayOf()‎ في التوثيق الرسمي للمكتبة القياسية في لغة Kotlin.]
+
* [https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.jvm/is-array-of.html صفحة الدالة isArrayOf()‎ في التوثيق الرسمي للمكتبة القياسية في لغة Kotlin.]
 
[[تصنيف:Kotlin]]
 
[[تصنيف:Kotlin]]
[[تصنيف:Kotlin Methods]]
+
[[تصنيف:Kotlin Function]]
 +
[[تصنيف:Kotlin Collection]]

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

تتحقَّق الدالة isArrayOf()‎ من حواية المصفوفة التي استُدعيت معها عناصرَ من نوعٍ محدَّد.

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

fun <reified T : Any> Array<*>.isArrayOf(): Boolean

يدل استخدام الكلمة المفتاحية reified على إمكانية الوصول إلى نوعٍ مُمرَّر كمتحولٍ وسيطٍ (راجع توثيق reified للمزيد من التفاصيل).

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

تُعاد القيمة المنطقية true إن كانت المصفوفة المعطاة تحوي النوع المعطى أو القيمة false خلاف ذلك.

أمثلة

مثالٌ على استعمال الدالة  ()isArrayOf:

fun main(args: Array<String>) {
    var numbers = Array(6) { i -> i }

    println(numbers.isArrayOf<Int>()) // true
    println(numbers.isArrayOf<String>()) // false
}

انظر أيضًا

  • الدالة isEmpty()‎: تتحقَّق إن كانت المصفوفة التي استُدعيت معها فارغةً أم لا.
  • الدالة all()‎: تتحقق إن كانت كافّة عناصر المصفوفة أو المجموعة (collection) التي استُدعيت معها تطابق شرطًا محدَّدًا.
  • الدالة none()‎: تتحقق إن كانت المصفوفة أو المجموعة أو الخريطة التي استدعيت معها فارغةً، أو إن لم يكن هنالك أي عنصر من تلك العناصر محقِّقًا لشرط معين.

مصادر