الفرق بين المراجعتين لصفحة: «Kotlin/collections/elementAtOrElse»
ط استبدال النص - 'Kotlin Functions' ب'Kotlin Function' |
جميل-بيلوني (نقاش | مساهمات) طلا ملخص تعديل |
||
سطر 50: | سطر 50: | ||
): T | ): T | ||
</syntaxhighlight>وجود الكلمة المفتاحية <code>inline</code> يدل على أنَّ هذه الدالة مباشرة (للمزيد من التفاصيل، راجع <nowiki/>[[Kotlin/inline functions|توثيق الدوال المباشرة]]). | </syntaxhighlight>وجود الكلمة المفتاحية <code>inline</code> يدل على أنَّ هذه الدالة مباشرة (للمزيد من التفاصيل، راجع <nowiki/>[[Kotlin/inline functions|توثيق الدوال المباشرة]]). | ||
== المعاملات == | |||
=== <code>index</code> === | |||
عدد صحيح يمثل فهرس العنصر المراد جلبه من [[Kotlin/Array|المصفوفة]] أو [[Kotlin/collections|المجموعة]] المعطاة. | |||
=== <code>defaultValue</code> === | |||
دالةٌ تستدعى عندما يكون الفهرس <code>index</code> خارج حدود <nowiki/>[[Kotlin/Array|المصفوفة]] أو [[Kotlin/collections|المجموعة]]. | |||
==القيم المعادة== | ==القيم المعادة== | ||
يُعاد العنصر ذي الفهرس المعطى والموجود ضمن نطاق [[Kotlin/Array|المصفوفة]] أو [[Kotlin/Array|المجموعة]] المعطاة، أو ناتج استدعاء الدالة <code>defaultValue()</code> إن كان فهرس العنصر المعطى يقع خارج حدود [[Kotlin/Array|المصفوفة]] أو [[Kotlin/Array|المجموعة]]. | يُعاد العنصر ذي الفهرس المعطى والموجود ضمن نطاق [[Kotlin/Array|المصفوفة]] أو [[Kotlin/Array|المجموعة]] المعطاة، أو ناتج استدعاء الدالة <code>defaultValue()</code> إن كان فهرس العنصر المعطى يقع خارج حدود [[Kotlin/Array|المصفوفة]] أو [[Kotlin/Array|المجموعة]]. | ||
==أمثلة== | ==أمثلة== | ||
استعمال الدالة <code>()elementAtOrElse</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) | ||
سطر 62: | سطر 70: | ||
} | } | ||
</syntaxhighlight> | </syntaxhighlight> | ||
استعمال الدالة <code>()elementAtOrElse</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) |
مراجعة 04:48، 3 سبتمبر 2018
تجلب الدالة elementAtOrElse()
عنصرًا ذي فهرس معيَّن من المصفوفة أو المجموعة التي استُدعيت معها. إن كان الفهرس المعطى خارج حدود المصفوفة أو المجموعة، فستُعيد الدالة ناتج استدعاء دالة معينة.
البنية العامة
يمكن استدعاء الدالة elementAtOrElse()
مع المصفوفات:
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
ومع المجموعات:
fun <T> Iterable<T>.elementAtOrElse(
index: Int,
defaultValue: (Int) -> T
): T
ومع القوائم:
inline fun <T> List<T>.elementAtOrElse(
index: Int,
defaultValue: (Int) -> T
): T
وجود الكلمة المفتاحية inline
يدل على أنَّ هذه الدالة مباشرة (للمزيد من التفاصيل، راجع توثيق الدوال المباشرة).
المعاملات
index
عدد صحيح يمثل فهرس العنصر المراد جلبه من المصفوفة أو المجموعة المعطاة.
defaultValue
دالةٌ تستدعى عندما يكون الفهرس index
خارج حدود المصفوفة أو المجموعة.
القيم المعادة
يُعاد العنصر ذي الفهرس المعطى والموجود ضمن نطاق المصفوفة أو المجموعة المعطاة، أو ناتج استدعاء الدالة defaultValue()
إن كان فهرس العنصر المعطى يقع خارج حدود المصفوفة أو المجموعة.
أمثلة
استعمال الدالة ()elementAtOrElse
لجلب عنصر موجود ضمن مصفوفة:
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
}
استعمال الدالة ()elementAtOrElse
لحاولة جلب عنصر يقع خارج مصفوفة:
fun main(args: Array<String>) {
val array = arrayOf(1, 2, 3, 4, 5, 6)
val default: (Int) -> Int = { it * 10 }
println(array.elementAtOrElse(12, default)) // 120
}
انظر أيضًا
- الدالة
elementAt()
: تجلب عنصرًا ذي فهرس معيَّن من المصفوفة أو المجموعة التي استُدعيت معها. - الدالة
elementAtOrNull()
: تجلب العنصر ذي الفهرس المعطى والموجود ضمن نطاق المصفوفة أو المجموعة المعطاة، أو القيمة العدميةnull
إن كان فهرس العنصر المعطى يقع خارج حدود المصفوفة أو المجموعة. - الدالة
dropLast()
: تعيد قائمة تحوي جميع عناصر المصفوفة أو المجموعة التي استُدعيت معها باستثناء أولn
عنصر. - الدالة
distinctBy()
: تعيد قائمة تحتوي على العناصر الموجودة في المصفوفة أو المجموعة التي استُدعيت معها والتي تعطي نتيجة مختلفة عند تطبيق دالة معينة عليها فقط. - التابع
Array.get()
: يعيد قيمة العنصر ذي الفهرس (index) المعطى الموجود في مصفوفة.