الدالة single()‎ في لغة Kotlin

من موسوعة حسوب
مراجعة 10:34، 4 يونيو 2018 بواسطة محمد-بغات (نقاش | مساهمات) (أنشأ الصفحة ب'<noinclude>{{DISPLAYTITLE: الدالة <code>single()‎</code> في لغة Kotlin}}</noinclude> تعيد الدالة<code>single()‎</code>Kotlin/Array|المصف...')
(فرق) → مراجعة أقدم | المراجعة الحالية (فرق) | مراجعة أحدث ← (فرق)

تعيد الدالةsingle()‎المصفوفة أو المجموعة أو اللائحة أو القاموس الذي استُدعيت عبره إن لم يكن يساوي null، أو تعيد مصفوفة أو مجموعة أو لائحة أو قاموسًا فارغًا.

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

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

inline fun <reified T> Array<out T>?.orEmpty(): Array<out T>

يمكن استدعاء الدالة orEmpty()‎ عبر المجموعات:

inline fun <T> Collection<T>?.orEmpty(): Collection<T>

يمكن استدعاء الدالة single()‎ عبر اللوائح:

inline fun <T> List<T>?.orEmpty(): List<T>

يمكن استدعاء الدالة single()‎ عبر القواميس:

inline fun <K, V> Map<K, V>?.orEmpty(): Map<K, V> (source)

يمكن استدعاء الدالة single()‎ عبر المجموعات من النوع Set:

inline fun <K, V> Map<K, V>?.orEmpty(): Map<K, V> (source)

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

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

المصفوفة أو المجموعة أو اللائحة أو القاموس الذي استُدعيت عبره إن لم يكن يساوي null، أو تعيد مصفوفة أو مجموعة أو لائحة أو قاموسًا فارغًا.

أمثلة

استخدام الدالة ()single مع المصفوفات

تعرف الشيفرة الآتية  عنصرًا من النوع Array<Any>?‎ باسم nullArray، وتعطيه القيمة null، ثم تستدعي الدالة ()single  عبر nullArray، ثم تطبع الناتج:

fun main(args: Array<String>) {
val nullArray: Array<Any>? = null
    
println(nullArray.orEmpty().contentToString()) // []
}

استخدام الدالة ()single مع المصفوفات

تعرف الشيفرة الآتية  مصفوفة باسم arrayمكونة من ثلاثة حروف باستخدام الدالة ()arrayOf، ثم تستدعي الدالة ()single عبر array ، ثم تطبع الناتج:

fun main(args: Array<String>) {
val array: Array<Char>? = arrayOf('a', 'b', 'c')
    
println(array.orEmpty().contentToString()) // [a, b, c]
}

أنظر أيضًا

  • none()‎: تعيد القيمة true إن كانت المصفوفة أو المجموعة التي استُدعيت عبرها فارغة، أو تعيد false. وفي حال تمرير شرط منطقي predicate. فستعيد true إن لم يكن هناك أي عنصر يحقق ذلك الشرط المنطقي، أو تعيد false.

مصادر