الدالة requireNoNulls()‎ في Kotlin

من موسوعة حسوب
مراجعة 10:12، 8 سبتمبر 2018 بواسطة جميل-بيلوني (نقاش | مساهمات)
(فرق) → مراجعة أقدم | المراجعة الحالية (فرق) | مراجعة أحدث ← (فرق)

تعيد الدالة requireNoNulls()‎ العناصر غير المعدومة (non-null) من المصفوفة أو المجموعة أو القائمة التي استُدعيت معها أو ترمي استثناءً إن وجد عنصر معدوم (null).

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

fun <T : Any> Array<T?>.requireNoNulls(): Array<T> 
fun <T : Any> Iterable<T?>.requireNoNulls(): Iterable<T> 
fun <T : Any> List<T?>.requireNoNulls(): List<T>

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

تعاد المصفوفة أو المجموعة أو القائمة المعطاة نفسها إن لم يكن فيها أي عنصر معدوم أو يرمى الاستثناء IllegalArgumentException إن وجد أي عنصر معدوم.

أمثلة

استعمال الدالة ()requireNoNulls مع قائمة لا تحتوي على أي عنصر معدوم:

fun main(args: Array<String>) {
    var list = List<Int?>(6) { it }

    print(list.requireNoNulls()) // [0, 1, 2, 3, 4, 5]
}

استعمال الدالة ()requireNoNulls مع قائمة تحتوي على عنصر معدوم:

fun main(args: Array<String>) {
    var list = List(6) { if (it < 5) it else null } // [0, 1, 2, 3, 4, null]

    print(list.requireNoNulls())
}

نتيجة تنفيذ المثال السابق هي:

Exception in thread "main" java.lang.IllegalArgumentException: null element found in [0, 1, 2, 3, 4, null].
	at kotlin.collections.CollectionsKt___CollectionsKt.requireNoNulls(_Collections.kt:1806)
	at TestKt.main(test.kt:4)

انظر أيضًا

  • الدالة none()‎: تتحقق إن كانت المصفوفة أو المجموعة أو الخريطة التي استدعيت معها فارغةً، أو إن لم يكن هنالك أي عنصر من تلك العناصر محقِّقًا لشرط معين.

مصادر