الفرق بين المراجعتين لصفحة: «Kotlin/collections/elementAt»

من موسوعة حسوب
أنشأ الصفحة ب'<noinclude>{{DISPLAYTITLE: الدالة <code>elementAt()‎</code> في لغة Kotlin}}</noinclude> تعيد الدالة<code>elementAt()‎</code> Kotlin/List|لا...'
 
ط إضافةقسم المعاملات.
 
(7 مراجعات متوسطة بواسطة 3 مستخدمين غير معروضة)
سطر 1: سطر 1:
<noinclude>{{DISPLAYTITLE: الدالة <code>elementAt()‎</code> في لغة Kotlin}}</noinclude>
تجلب الدالة <code>elementAt()‎</code> عنصرًا ذي فهرس معيَّن من [[Kotlin/Array|المصفوفة]] أو [[Kotlin/collections|المجموعة]] التي استُدعيت معها. إن كان فهرس العنصر المعطى خارج حدود [[Kotlin/Array|المصفوفة]] أو [[Kotlin/Array|المجموعة]]، فستُطلق الدالة [[Kotlin/exceptions|الاستثناء]] [https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-index-out-of-bounds-exception/index.html IndexOutOfBoundsException].
تعيد الدالة<code>elementAt()‎</code> [[Kotlin/List|لائحة]] تحتوي جميع عناصر  [[Kotlin/Array|المصفوفة]] أو [[Kotlin/Array|المجموعة]] التي استُدعيت عبرها باستثناء العناصر الأولى التي تحقق الشرط المنطقي <code>predicate</code> المُمرّر إلى الدالة.
==البنية العامة==
يمكن استدعاء الدالة <code>elementAt()‎</code> مع [[Kotlin/Array|المصفوفات]]:<syntaxhighlight lang="kotlin">
inline fun <T> Array<out T>.elementAt(index: Int): T
inline fun ByteArray.elementAt(index: Int): Byte
inline fun ShortArray.elementAt(index: Int): Short
inline fun IntArray.elementAt(index: Int): Int
inline fun LongArray.elementAt(index: Int): Long
inline fun FloatArray.elementAt(index: Int): Float
inline fun DoubleArray.elementAt(index: Int): Double
inline fun BooleanArray.elementAt(index: Int): Boolean
inline fun CharArray.elementAt(index: Int): Char
</syntaxhighlight>ومع [[Kotlin/collections|المجموعات]]:<syntaxhighlight lang="kotlin">
fun <T> Iterable<T>.elementAt(index: Int): T


== البنية العامة ==
</syntaxhighlight>ومع [[Kotlin/List|القوائم]]:<syntaxhighlight lang="kotlin">
<syntaxhighlight lang="kotlin">
inline fun <T> List<T>.elementAt(index: Int): T
inline fun <T> Array<out T>.dropWhile(
    predicate: (T) -> Boolean
): List<T>  
inline fun ByteArray.dropWhile(
    predicate: (Byte) -> Boolean
): List<Byte>
inline fun ShortArray.dropWhile(
    predicate: (Short) -> Boolean
): List<Short>
inline fun IntArray.dropWhile(
    predicate: (Int) -> Boolean
): List<Int>
inline fun LongArray.dropWhile(
    predicate: (Long) -> Boolean
): List<Long>
inline fun FloatArray.dropWhile(
    predicate: (Float) -> Boolean
): List<Float>
inline fun DoubleArray.dropWhile(
    predicate: (Double) -> Boolean
): List<Double>
inline fun BooleanArray.dropWhile(
    predicate: (Boolean) -> Boolean
): List<Boolean>
inline fun CharArray.dropWhile(
    predicate: (Char) -> Boolean
): List<Char>
inline fun <T> Iterable<T>.dropWhile(
    predicate: (T) -> Boolean
): List<T>
</syntaxhighlight>يُلاحَظ وجود الكلمة المفتاحية <code>inline</code> للدلالة على أن هذه الدالة مباشرة، وللمزيد من التفاصيل راجع <nowiki/>[[Kotlin/inline functions|توثيق الدوال المباشرة (inline functions)]].


== القيم المعادة ==
</syntaxhighlight>وجود الكلمة المفتاحية <code>inline</code> يدل على أن هذه الدالة مباشرة (لمزيد من التفاصيل، راجع <nowiki/>[[Kotlin/inline functions|توثيق الدوال المباشرة]]).


[[Kotlin/List|لائحة]] تحتوي جميع عناصر  [[Kotlin/Array|المصفوفة]] أو [[Kotlin/Array|المجموعة]] التي استُدعيت عبرها باستثناء العناصر الأولى التي تحقق الشرط المنطقي <code>predicate</code> المُمرّر إلى الدالة.
== المعاملات ==
 
=== <code>index</code> ===
عدد صحيح يمثل فهرس العنصر المراد جلبه من [[Kotlin/Array|المصفوفة]] أو [[Kotlin/collections|المجموعة]] المعطاة.
 
==القيم المعادة==
يُعاد العنصر ذي الفهرس المعطى والموجود ضمن نطاق [[Kotlin/Array|المصفوفة]] أو [[Kotlin/Array|المجموعة]] المعطاة، أو يُطلق [[Kotlin/exceptions|الاستثناء]] <code>IndexOutOfBoundsException</code> إن كان فهرس العنصر المعطى يقع خارج حدود [[Kotlin/Array|المصفوفة]] أو [[Kotlin/Array|المجموعة]].
==أمثلة==
==أمثلة==
===استخدام الدالة <code>()elementAt</code> مع المصفوفات  ===
مثالٌ على استعمال الدالة <code>()elementAt</code> لجلب العنصر الرابع من مصفوفة:<syntaxhighlight lang="kotlin">
تعرف الشيفرة الآتية [[Kotlin/Array|مصفوفة]] باسم <code>array</code>مكونة من ستة أعداد باستخدام الدالة <code>()arrayOf</code>، ثم تعرف دالة منطقية <code>predicate</code> تحدد ما إذا كان العدد المُمرّر إليها أصغر من <code>3،</code> ثم تستخدم الدالة <code>()elementAt</code> للحصول على لائحة تضم جميع عناصر المصفوفة باستثناء العناصر الأولى التي تحقق الدالة المنطقية <code>()predicate</code> ثم تطبع الناتج:<syntaxhighlight lang="kotlin">
fun main(args: Array<String>) {
    val array = arrayOf(1, 2, 3, 4, 5, 6)
    println(array.elementAt(3)) // 4
}
</syntaxhighlight>
مثالٌ آخر على استعمال الدالة <code>()elementAt</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 predicate: (Int) -> Boolean = { it < 3}
    println(array.elementAt(6))
println(array.dropWhile(predicate)) // [3, 4, 5, 6]
}
}
</syntaxhighlight>لمَّا كان العنصر المشار إليه خارج حدود [[Kotlin/Array|المصفوفة]]، فسيُطلق [[Kotlin/exceptions|استثناءً]] وسنحصل على النتيجة التالية:<syntaxhighlight lang="text">
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 6
at TestKt.main(test.kt:3)
</syntaxhighlight>
</syntaxhighlight>
==انظر أيضًا ==
==انظر أيضًا==
* <code>[[Kotlin/collections/dropWhile|dropWhile()]]</code>: تعيد لائحة تحتوي جميع عناصر <nowiki/>[[Kotlin/Array|المصفوفة]] أو <nowiki/>[[Kotlin/Array|المجموعة]] التي استُدعيت عبرها باستثناء العناصر الأولى التي تحقق شرطا منطقيا محددًا
*الدالة <code>[[Kotlin/collections/elementAtOrElse|elementAtOrElse()]]</code>: تجلب عنصرًا ذي فهرس معيَّن من [[Kotlin/Array|المصفوفة]] أو [[Kotlin/Array|المجموعة]] التي استُدعيت معها. إن كان الفهرس المعطى خارج حدود [[Kotlin/Array|المصفوفة]] أو [[Kotlin/Array|المجموعة]]، فستُعيد الدالة ناتج استدعاء دالة معينة.
 
* <code>[[Kotlin/collections/dropLast|dropLast()]]</code>‎: تعيد لائحة تحتوي جميع عناصر <nowiki/>[[Kotlin/Array|المصفوفة]] أو <nowiki/>[[Kotlin/Array|المجموعة]] التي استُدعيت عبرها باستثناء العناصر الأخيرة المحددة بالمعامل المُمرّر <code>n</code>.
* <code>[[Kotlin/collections/drop|drop()]]</code>‎: تعيد [[Kotlin/List|لائحة]] تحتوي جميع عناصر  [[Kotlin/Array|المصفوفة]] أو [[Kotlin/Array|المجموعة]] التي استُدعيت عبرها باستثناء العناصر الأولى المحددة بالمعامل المُمرّر <code>n.</code>


*الدالة <code>[[Kotlin/collections/elementAtOrNull|elementAtOrNull()]]</code>‎: تجلب العنصر ذي الفهرس المعطى والموجود ضمن نطاق [[Kotlin/Array|المصفوفة]] أو [[Kotlin/Array|المجموعة]] المعطاة، أو القيمة العدمية <code>null</code> إن كان فهرس العنصر المعطى يقع خارج حدود [[Kotlin/Array|المصفوفة]] أو [[Kotlin/Array|المجموعة]].
* التابع <code>[[Kotlin/Array/get|Array.get()‎]]</code>: يعيد قيمة العنصر ذي الفهرس (index) المعطى الموجود في مصفوفة.
* الدالة <code>[[Kotlin/collections/drop|drop()]]</code>‎: تعيد قائمة تحوي جميع عناصر <nowiki/>[[Kotlin/Array|المصفوفة]] أو <nowiki/>[[Kotlin/Array|المجموعة]] التي استُدعيت معها باستثناء آخر <code>n</code> عنصر.
* الدالة <code>[[Kotlin/collections/distinct|distinct()‎]]</code>: تحذف العناصر المتكررة الموجودة في <nowiki/>[[Kotlin/Array|المصفوفة]] أو <nowiki/>[[Kotlin/collections|المجموعة]] التي استُدعيت معها وتعيد الناتج في قائمة.
==مصادر==
==مصادر==
*[https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/drop-while.html الدالة  elementAt()‎ في التوثيق الرسميّ للمكتبة القياسيّة في لغة Kotlin.]
*[https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/element-at.html صفحة الدالة elementAt()‎ في التوثيق الرسميّ للمكتبة القياسيّة في لغة Kotlin.]<noinclude>{{DISPLAYTITLE: الدالة <code>elementAt()‎</code> في Kotlin}}</noinclude>
[[تصنيف:Kotlin]]
[[تصنيف:Kotlin]]
[[تصنيف:Kotlin Functions]]
[[تصنيف:Kotlin Function]]
[[تصنيف:Kotlin Collection]]

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

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

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

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

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

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

fun <T> Iterable<T>.elementAt(index: Int): T

ومع القوائم:

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

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

المعاملات

index

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

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

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

أمثلة

مثالٌ على استعمال الدالة ()elementAt لجلب العنصر الرابع من مصفوفة:

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

مثالٌ آخر على استعمال الدالة ()elementAt لمحاولة جلب عنصر يقع خارج حدود مصفوفة:

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

لمَّا كان العنصر المشار إليه خارج حدود المصفوفة، فسيُطلق استثناءً وسنحصل على النتيجة التالية:

Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 6
	at TestKt.main(test.kt:3)

انظر أيضًا

مصادر