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

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

تضيف الدالةfilterNotNullTo()‎ إلى المعامل destination الممرّر إليها عناصرّ المصفوفة أو المجموعة التي استُدعيت عبرها والتي تخالف قيمتها القيمة null. من الجدير بالذكر أنّ destination ينبغي أن تكون مجموعة قابلة للتغيير (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) المُمرّرة إلى الدالة filterNotNullTo()‎ بعد إضافةعناصرّ المجموعة المتغيرة (MutableCollection) التي استُدعيت عبرها والتي تخالف قيمتها القيمة null.

أمثلة

استخدام الدالة ()filterNotNullTo مع اللوائح المتغيرة

تعرف الشيفرة الآتية لائحتين متغيرتين (mutableList) باسم list و list2 باستخدام الدالة ()mutableListOf، الأولى مكونة من ستة عناصر والثانية تضم عددًا واحدًا (0)، ثم تستخدم الدالة ()filterNotNullTo لتصفية عناصر اللائحة list التي تساوي null، وتضيف تلك العناصر إلى list2ثم تعرضها:

fun main(args: Array<String>) {
val list = mutableListOf(1, 2, 3, null, 5, 1)
val list2 = mutableListOf(0)

list.filterNotNullTo(list2)

println(list2)// [0, 1, 2, 3, 5]
}

انظر أيضًا

  • filter()‎: تعيد  لائحة تحتوي عناصر المصفوفة أو المجموعة التي تحقق الشرط المنطقي predicate()‎ المُمرّر إلى الدالة. وفي حال استدعائها عبرقاموس فستعيد قاموسًا جديدًا مكونًا من كل الأزوج التي تحقق الشرط المنطقي predicate()‎ الممرر إلى الدالة.
  • filterNot()‎: تعيد لائحة تحتوي عناصر المصفوفة أو المجموعة التي لا تحقق الشرط المنطقي predicate()‎ المُمرّر إلى الدالة. وفي حال استدعائها عبر قاموس فستعيد قاموسًا جديدًا مكونًا من كل الأزوج التي لا تحقق الشرط المنطقي predicate()‎ الممرر إلى الدالة.
  • filterIsInstance()‎: تعيد لائحة تحتوي عناصر المصفوفة أو المجموعة التي استُدعيت عبرها والتي هي نسخة (instance) من نوع (type) أوصنفٍ معيّن.
  • filterIndexedTo()‎: تضيف  إلى المعامل destination الممرّر إليها عناصرّ المجموعة المتغيرة (MutableCollection) التي استُدعيت عبرها والتي تحقق الشرط المنطقي predicate()‎ المُمرّر إلى الدالة.

مصادر