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

من موسوعة حسوب
اذهب إلى التنقل اذهب إلى البحث
(أنشأ الصفحة ب'<noinclude>{{DISPLAYTITLE: الدالة <code>elementAtOrNull()‎</code> في لغة Kotlin}}</noinclude> تعيد الدالة<code>elementAtOrNull()‎</code> الع...')
 
(إضافةقسم المعاملات.)
 
(6 مراجعات متوسطة بواسطة 3 مستخدمين غير معروضة)
سطر 1: سطر 1:
<noinclude>{{DISPLAYTITLE: الدالة <code>elementAtOrNull()‎</code> في لغة Kotlin}}</noinclude>
+
تجلب الدالة <code>elementAtOrNull()‎</code> عنصرًا ذي فهرس معيَّن من [[Kotlin/Array|المصفوفة]] أو [[Kotlin/collections|المجموعة]] التي استُدعيت معها. إن كان الفهرس المعطى خارج حدود [[Kotlin/Array|المصفوفة]] أو [[Kotlin/Array|المجموعة]]، فستُعيد الدالة القيمة العدمية <code>null</code>.
تعيد الدالة<code>elementAtOrNull()‎</code> العنصر الموجود عند الفهرس (index) المحدد  من [[Kotlin/Array|المصفوفة]] أو [[Kotlin/Array|المجموعة]] التي استُدعيت عبرها، وفي حال كان ذلك الفهرس خارج حدود [[Kotlin/Array|المصفوفة]] أو [[Kotlin/Array|المجموعة]] فستُعيد ناتج تطبيق الدالة المُمرّرة <code>defaultValue()‎</code> على الفهرس.
+
==البنية العامة==
 +
يمكن استدعاء الدالة<code>elementAtOrNull()‎</code> مع [[Kotlin/Array|المصفوفات]]:<syntaxhighlight lang="kotlin">
 +
inline fun <T> Array<out T>.elementAtOrNull(index: Int): T?
 +
inline fun ByteArray.elementAtOrNull(index: Int): Byte?
 +
inline fun ShortArray.elementAtOrNull(index: Int): Short?
 +
inline fun IntArray.elementAtOrNull(index: Int): Int?
 +
inline fun LongArray.elementAtOrNull(index: Int): Long?
 +
inline fun FloatArray.elementAtOrNull(index: Int): Float?
 +
inline fun DoubleArray.elementAtOrNull(index: Int): Double?
 +
inline fun BooleanArray.elementAtOrNull(index: Int): Boolean?
 +
inline fun CharArray.elementAtOrNull(index: Int): Char?
  
== البنية العامة ==
+
</syntaxhighlight>ومع [[Kotlin/collections|المجموعات]]:<syntaxhighlight lang="kotlin">
يمكن استدعاء الدالة<code>elementAtOrElse()‎</code> على [[Kotlin/Array|المصفوفات]].<syntaxhighlight lang="kotlin">
+
fun <T> Iterable<T>.elementAtOrNull(index: Int): T?
inline fun <T> Array<out T>.elementAtOrElse(
 
    index: Int,
 
    defaultValue: (Int) -> T
 
): T
 
inline fun ByteArray.elementAtOrElse(
 
    index: Int,
 
    defaultValue: (Int) -> Byte
 
): Byte
 
inline fun ShortArray.elementAtOrElse(
 
    index: Int,
 
    defaultValue: (Int) -> Short
 
): Short
 
inline fun IntArray.elementAtOrElse(
 
    index: Int,
 
    defaultValue: (Int) -> Int
 
): Int
 
inline fun LongArray.elementAtOrElse(
 
    index: Int,
 
    defaultValue: (Int) -> Long
 
): Long
 
inline fun FloatArray.elementAtOrElse(
 
    index: Int,
 
    defaultValue: (Int) -> Float
 
): Float
 
inline fun DoubleArray.elementAtOrElse(
 
    index: Int,
 
    defaultValue: (Int) -> Double
 
): Double
 
inline fun BooleanArray.elementAtOrElse(
 
    index: Int,
 
    defaultValue: (Int) -> Boolean
 
): Boolean
 
inline fun CharArray.elementAtOrElse(
 
    index: Int,
 
    defaultValue: (Int) -> Char
 
): Char
 
</syntaxhighlight>يمكن استدعاء الدالة<code>elementAtOrElse()‎</code> على [[Kotlin/Array|المجموعات]].<syntaxhighlight lang="kotlin">
 
fun <T> Iterable<T>.elementAtOrElse(
 
    index: Int,
 
    defaultValue: (Int) -> T
 
): T  
 
</syntaxhighlight>يمكن استدعاء الدالة<code>elementAtOrElse()‎</code> على [[Kotlin/List|اللوائح]].<syntaxhighlight lang="kotlin">
 
inline fun <T> List<T>.elementAtOrElse(
 
    index: Int,
 
    defaultValue: (Int) -> T
 
): T
 
</syntaxhighlight>يُلاحَظ وجود الكلمة المفتاحية <code>inline</code> للدلالة على أن هذه الدالة مباشرة، وللمزيد من التفاصيل راجع <nowiki/>[[Kotlin/inline functions|توثيق الدوال المباشرة (inline functions)]].
 
  
== القيم المعادة ==
+
</syntaxhighlight>ومع [[Kotlin/List|القوائم]]:<syntaxhighlight lang="kotlin">
 +
inline fun <T> List<T>.elementAtOrNull(index: Int): T?
  
العنصر الموجود عند الفهرس (index) المحدد  من [[Kotlin/Array|المصفوفة]] أو [[Kotlin/Array|المجموعة]] التي استُدعيت عبرها، وفي حال كان ذلك الفهرس خارج حدود [[Kotlin/Array|المصفوفة]] أو [[Kotlin/Array|المجموعة]] فستُعيد ناتج تطبيق الدالة المُمرّرة <code>defaultValue()‎</code> على الفهرس.
+
</syntaxhighlight>وجود الكلمة المفتاحية <code>inline</code> يدل على أنَّ هذه الدالة مباشرة (للمزيد من التفاصيل، راجع <nowiki/>[[Kotlin/inline functions|توثيق الدوال المباشرة]]).
 +
 
 +
== المعاملات ==
 +
 
 +
=== <code>index</code> ===
 +
عدد صحيح يمثل فهرس العنصر المراد جلبه من [[Kotlin/Array|المصفوفة]] أو [[Kotlin/collections|المجموعة]] المعطاة.
 +
 
 +
==القيم المعادة==
 +
يُعاد العنصر ذي الفهرس المعطى والموجود ضمن نطاق [[Kotlin/Array|المصفوفة]] أو [[Kotlin/Array|المجموعة]] المعطاة، أو القيمة العدمية <code>null</code> إن كان فهرس العنصر المعطى يقع خارج حدود [[Kotlin/Array|المصفوفة]] أو [[Kotlin/Array|المجموعة]].
 
==أمثلة==
 
==أمثلة==
===استخدام الدالة <code>()elementAtOrNull</code> مع المصفوفات: الحالة الأولى  ===
+
تعرِّف الشيفرة الآتية [[Kotlin/Array|مصفوفة]] باسم <code>array</code> باستخدام الدالة <code>()arrayOf</code> ثمَّ تستخدم الدالة <code>()elementAtOrNull</code> لجلب العنصر الثالث والسابع من تلك المصفوفة:<syntaxhighlight lang="kotlin">
تعرف الشيفرة الآتية [[Kotlin/Array|مصفوفة]] باسم <code>array</code>مكونة من ستة أعداد باستخدام الدالة <code>()arrayOf</code>، ثم تعرف دالة باسم  <code>default،</code> ثم تستخدم الدالة <code>()elementAt</code> للحصول على العنصر الموجود عند الفهرس <code>2</code> ثم تطبع الناتج:<syntaxhighlight lang="kotlin">
 
fun main(args: Array<String>) {
 
val array = arrayOf(1,2,3,4,5,6)
 
val default: (Int) -> Int = { it * 10}
 
 
 
println(array.elementAtOrElse(2,default)) // 3
 
}
 
</syntaxhighlight>
 
===استخدام الدالة <code>()elementAtOrNull</code> مع المصفوفات: الحالة الثانية  ===
 
تعرف الشيفرة الآتية [[Kotlin/Array|مصفوفة]] باسم <code>array</code>مكونة من ستة أعداد باستخدام الدالة <code>()arrayOf</code>، ثم تعرف دالة باسم  <code>()default،</code>ثم تستخدم الدالة <code>()elementAt</code> للحصول على العنصر الموجود عند الفهرس <code>12،</code> ولما كان هذا الفهرس خارج حدود [[Kotlin/Array|المصفوفة]] فستُعيد الدالة ناتج تطبيق الدالة <code>()default</code> على الفهرس المُمرّر (<code>12</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)
val default: (Int) -> Int = { it * 10}
+
    println(array.elementAtOrNull(2)) // 3
println(array.elementAtOrElse(12,default)) // 120
+
    println(array.elementAtOrNull(6)) // null
 
}
 
}
 
</syntaxhighlight>
 
</syntaxhighlight>
==انظر أيضًا ==
+
==انظر أيضًا==
* <code>[[Kotlin/collections/elementAt|elementAt()]]</code>‎: تعيد العنصر الموجود عند الفهرس (index) المحدد  من [[Kotlin/Array|المصفوفة]] أو [[Kotlin/Array|المجموعة]] التي استُدعيت عبرها، وفي حال كان ذلك الفهرس خارج حدود [[Kotlin/Array|المصفوفة]] أو [[Kotlin/Array|المجموعة]] فستُطلق <nowiki/>[[Kotlin/exceptions|استثناءً]]  [https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-index-out-of-bounds-exception/index.html IndexOutOfBoundsException].
+
*الدالة <code>[[Kotlin/collections/elementAt|elementAt()]]</code>‎: تجلب عنصرًا ذي فهرس معيَّن من [[Kotlin/Array|المصفوفة]] أو [[Kotlin/Array|المجموعة]] التي استُدعيت معها.
* <code>[[Kotlin/collections/elementAtOrNull|elementAtOrNull()]]</code>‎: تعيد العنصر الموجود عند الفهرس (index) المحدد  من  [[Kotlin/Array|المصفوفة]] أو [[Kotlin/Array|المجموعة]] التي استُدعيت عبرها، وفي حال كان ذلك الفهرس خارج حدود [[Kotlin/Array|المصفوفة]] أو [[Kotlin/Array|المجموعة]] فستُعيد القيمة المعدومة <code>null</code>.
+
*الدالة <code>[[Kotlin/collections/elementAtOrElse|elementAtOrElse()‎]]</code>: تجلب عنصرًا ذي فهرس معيَّن من [[Kotlin/Array|المصفوفة]] أو [[Kotlin/Array|المجموعة]] التي استُدعيت معها. إن كان الفهرس المعطى خارج حدود [[Kotlin/Array|المصفوفة]] أو [[Kotlin/Array|المجموعة]]، فستُعيد الدالة ناتج استدعاء دالة معينة.
 
+
* الدالة <code>[[Kotlin/collections/dropWhile|dropWhile()]]</code>‎: تعيد قائمةً تحوي جميع عناصر <nowiki/>[[Kotlin/Array|المصفوفة]] أو <nowiki/>[[Kotlin/collections|المجموعة]] التي استُدعيت معها باستثناء العناصر الأخيرة التي تحقق شرطًا معيَّنًا.
 +
* الدالة <code>[[Kotlin/collections/copyOfRange|copyOfRange()‎]]</code> : تنسخ مجالًا محدَّدًا من <nowiki/>[[Kotlin/Array|المصفوفة]] التي استُدعيت معها.
 +
* التابع <code>[[Kotlin/Array/get|Array.get()‎]]</code>: يعيد قيمة العنصر ذي الفهرس (index) المعطى الموجود في مصفوفة.
 
==مصادر==
 
==مصادر==
*[https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/element-at-or-else.html الدالة  elementAtOrNull()‎ في التوثيق الرسميّ للمكتبة القياسيّة في لغة Kotlin.]
+
*[https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/element-at-or-null.html صفحة الدالة elementAtOrNull()‎ في التوثيق الرسميّ للمكتبة القياسيّة في لغة Kotlin.]<noinclude>{{DISPLAYTITLE: الدالة <code>elementAtOrNull()‎</code> في Kotlin}}</noinclude>
 
[[تصنيف:Kotlin]]
 
[[تصنيف:Kotlin]]
[[تصنيف:Kotlin Functions]]
+
[[تصنيف:Kotlin Function]]
 +
[[تصنيف:Kotlin Collection]]

المراجعة الحالية بتاريخ 04:36، 3 سبتمبر 2018

تجلب الدالة elementAtOrNull()‎ عنصرًا ذي فهرس معيَّن من المصفوفة أو المجموعة التي استُدعيت معها. إن كان الفهرس المعطى خارج حدود المصفوفة أو المجموعة، فستُعيد الدالة القيمة العدمية null.

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

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

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

ومع المجموعات:

fun <T> Iterable<T>.elementAtOrNull(index: Int): T?

ومع القوائم:

inline fun <T> List<T>.elementAtOrNull(index: Int): T?

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

المعاملات

index

عدد صحيح يمثل فهرس العنصر المراد جلبه من المصفوفة أو المجموعة المعطاة.

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

يُعاد العنصر ذي الفهرس المعطى والموجود ضمن نطاق المصفوفة أو المجموعة المعطاة، أو القيمة العدمية null إن كان فهرس العنصر المعطى يقع خارج حدود المصفوفة أو المجموعة.

أمثلة

تعرِّف الشيفرة الآتية مصفوفة باسم array باستخدام الدالة ()arrayOf ثمَّ تستخدم الدالة ()elementAtOrNull لجلب العنصر الثالث والسابع من تلك المصفوفة:

fun main(args: Array<String>) {
    val array = arrayOf(1, 2, 3, 4, 5, 6)
    println(array.elementAtOrNull(2)) // 3
    println(array.elementAtOrNull(6)) // null
}

انظر أيضًا

مصادر