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

من موسوعة حسوب

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

أمثلة

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

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

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

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

تعرف الشيفرة الآتية  مصفوفة باسم arrayمكونة من ثلاثة حروف باستخدام الدالة ()arrayOf، ثم تستدعي الدالة ()orEmpty عبر 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.

مصادر