الدالة filterNotNullTo()
في Kotlin
< Kotlin | collections
تشبه الدالة filterNotNullTo()
الدالة filterNotNull()
في جميع النواحي باستثناء أنَّها تضيف الناتج الذي تعيده إلى المعامل المُمرَّر إليها. الجدير بالذكر أنّه ينبغي أن يكون ذلك المعامل المعطى مجموعةً قابلةً للتغيير (MutableCollection).
البنية العامة
fun <C : MutableCollection<in T>, T : Any> Array<out T?>.filterNotNullTo(
destination: C
): C
fun <C : MutableCollection<in T>, T : Any> Iterable<T?>.filterNotNullTo(
destination: C
): C
القيم المٌعادة
تُعاد المجموعة المتغيرة (MutableCollection) الممرَّرة بعد إضافة جميع عناصر المصفوفة أو المجموعة المعطاة إليها باستثناء تلك ذات القيمة null
.
أمثلة
تعرف الشيفرة الآتية قائمتين متغيرتين (mutableList) باسم list1
و list2
باستخدام الدالة ()mutableListOf
، ثم تستخدم الدالة ()filterNotNullTo
لاستبعاد العناصر ذات القيمة null
من المصفوفة الأولى وإضافة الناتج إلى القائمة الثانية:
fun main(args: Array<String>) {
val list1 = mutableListOf(1, 2, 3, null, 5, 1)
val list2 = mutableListOf(0)
list.filterNotNullTo(list2)
println(list2)// [0, 1, 2, 3, 5, 1]
}
انظر أيضًا
- الدالة
filterNotNull()
: تعيد جميع عناصر المصفوفة أو المجموعة المعطاة باستثناء تلك ذات القيمةnull
. - الدالة
filterNot()
: تعيد قائمةً تحوي عناصر المصفوفة أو المجموعة التي لا تحقق شرطًا منطقيًّا محدَّدًا. إن استدعيت مع خريطة (map)، فستعيد خريطة جديدة تحوي الأزواج التي لم تحقق ذلك الشرط المنطقي. - الدالة
filterNotTo()
: تشبه الدالةfilterNot()
في جميع النواحي باستثناء أنَّها تضيف الناتج المعاد إلى المعامل الممرَّر إليها. - الدالة
filter()
: ترشِّح عناصر المصفوفة أو المجموعة أو أزواج الخرائط المعطاة التي تحقِّق شرطًا معيَّنًا ثمّ تعيدها.
- الدالة
filterIndexedTo()
: تضيف إلى المجموعة المتغيرةdestination
المُمرَّر إليها عناصر المصفوفة أو المجموعة المعطاة التي أعيدت القيمةtrue
مع كل عنصر منها عند تطبيق الدالةpredicate()
المُمرّر عليها. يمرَّر فهرس كل عنصر وقيمته إلى الدالةpredicate()
ثم تعيد بدورها قيمة منطقيَّة. - الدالة
filterIsInstanceTo()
: تضيف عناصر المصفوفة أو المجموعة المعطاة التي هي نسخةٌ (instance) من نوع أو صنفٍ معيّن إلى المجموعة المتغيرةdestination
المُمرّرة إليها.