الفرق بين المراجعتين لصفحة: «Kotlin/collections/elementAtOrElse»
لا ملخص تعديل |
لا ملخص تعديل |
||
سطر 57: | سطر 57: | ||
==أمثلة== | ==أمثلة== | ||
===استخدام الدالة <code>()elementAt</code> مع المصفوفات: الحالة الأولى === | ===استخدام الدالة <code>()elementAt</code> مع المصفوفات: الحالة الأولى === | ||
تعرف الشيفرة الآتية [[Kotlin/Array|مصفوفة]] باسم <code>array</code>مكونة من ستة أعداد باستخدام الدالة <code>()arrayOf</code>، ثم تعرف دالة باسم <code>default،</code> ثم تستخدم الدالة <code>() | تعرف الشيفرة الآتية [[Kotlin/Array|مصفوفة]] باسم <code>array</code>مكونة من ستة أعداد باستخدام الدالة <code>()arrayOf</code>، ثم تعرف دالة باسم <code>default،</code> ثم تستخدم الدالة <code>()elementAtOrElse</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) | ||
سطر 66: | سطر 66: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
===استخدام الدالة <code>()elementAtOrElse</code> مع المصفوفات: الحالة الثانية === | ===استخدام الدالة <code>()elementAtOrElse</code> مع المصفوفات: الحالة الثانية === | ||
تعرف الشيفرة الآتية [[Kotlin/Array|مصفوفة]] باسم <code>array</code>مكونة من ستة أعداد باستخدام الدالة <code>()arrayOf</code>، ثم تعرف دالة باسم <code>()default،</code>ثم تستخدم الدالة <code>() | تعرف الشيفرة الآتية [[Kotlin/Array|مصفوفة]] باسم <code>array</code>مكونة من ستة أعداد باستخدام الدالة <code>()arrayOf</code>، ثم تعرف دالة باسم <code>()default،</code>ثم تستخدم الدالة <code>()elementAtOrElse</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) |
مراجعة 19:28، 13 مايو 2018
تعيد الدالةelementAtOrElse()
العنصر الموجود عند الفهرس (index) المحدد من المصفوفة أو المجموعة التي استُدعيت عبرها، وفي حال كان ذلك الفهرس خارج حدود المصفوفة أو المجموعة فستُعيد ناتج تطبيق الدالة المُمرّرة defaultValue()
على الفهرس.
البنية العامة
يمكن استدعاء الدالة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
يمكن استدعاء الدالةelementAtOrElse()
على المجموعات.
fun <T> Iterable<T>.elementAtOrElse(
index: Int,
defaultValue: (Int) -> T
): T
يمكن استدعاء الدالةelementAtOrElse()
على اللوائح.
inline fun <T> List<T>.elementAtOrElse(
index: Int,
defaultValue: (Int) -> T
): T
يُلاحَظ وجود الكلمة المفتاحية inline
للدلالة على أن هذه الدالة مباشرة، وللمزيد من التفاصيل راجع توثيق الدوال المباشرة (inline functions).
القيم المعادة
العنصر الموجود عند الفهرس (index) المحدد من المصفوفة أو المجموعة التي استُدعيت عبرها، وفي حال كان ذلك الفهرس خارج حدود المصفوفة أو المجموعة فستُعيد ناتج تطبيق الدالة المُمرّرة defaultValue()
على الفهرس.
أمثلة
استخدام الدالة ()elementAt
مع المصفوفات: الحالة الأولى
تعرف الشيفرة الآتية مصفوفة باسم array
مكونة من ستة أعداد باستخدام الدالة ()arrayOf
، ثم تعرف دالة باسم default،
ثم تستخدم الدالة ()elementAtOrElse
للحصول على العنصر الموجود عند الفهرس 2
ثم تطبع الناتج:
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
مع المصفوفات: الحالة الثانية
تعرف الشيفرة الآتية مصفوفة باسم array
مكونة من ستة أعداد باستخدام الدالة ()arrayOf
، ثم تعرف دالة باسم ()default،
ثم تستخدم الدالة ()elementAtOrElse
للحصول على العنصر الموجود عند الفهرس 12،
ولما كان هذا الفهرس خارج حدود المصفوفة فستُعيد الدالة ناتج تطبيق الدالة ()default
على الفهرس المُمرّر (12
) ثم تطبع الناتج:
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()
: تعيد العنصر الموجود عند الفهرس (index) المحدد من المصفوفة أو المجموعة التي استُدعيت عبرها، وفي حال كان ذلك الفهرس خارج حدود المصفوفة أو المجموعة فستُطلق استثناءً IndexOutOfBoundsException.elementAtOrNull()
: تعيد العنصر الموجود عند الفهرس (index) المحدد من المصفوفة أو المجموعة التي استُدعيت عبرها، وفي حال كان ذلك الفهرس خارج حدود المصفوفة أو المجموعة فستُعيد القيمة المعدومةnull
.