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

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

تعيد الدالةflatten()‎ لائحة تحتوي جميع عناصر المصفوفات أو المجموعات التي تنتمي إلى المصفوفة أو المجموعة التي استُدعيت عبرها.

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

يمكن استدعاء الدالةflatten()‎ على المصفوفات.

fun <T> Array<out Array<out T>>.flatten(): List<T>

يمكن استدعاء الدالةflatten()‎ على المجموعات.

fun <T> Iterable<Iterable<T>>.flatten(): List<T>

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

لائحة تحتوي جميع عناصر المصفوفات أو المجموعات التي تنتمي إلى المصفوفة أو المجموعة التي استُدعيت عبرها.

أمثلة

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

تعرف الشيفرة الآتية مصفوفة باسم deepArrayمكونة من ثلاثة مصفوفات باستخدام الدالة ()arrayOf، ثم تستخدم الدالة ()flatten لإنشاء لائحة تضم جميع عناصر  المصفوفات المُنتمية إلى deepArray، ثم تطبع الناتج:

fun main(args: Array<String>) {
val deepArray = arrayOf(
    arrayOf(1),
    arrayOf(2, 3),
    arrayOf(4, 5, 6)
)

println(deepArray.flatten()) // [1, 2, 3, 4, 5, 6]
}

استخدام الدالة ()flatten مع اللوائح

تعرف الشيفرة الآتية لائحة باسم deepListمكونة من ثلاثة لوائح باستخدام الدالة ()listOf، ثم تستخدم الدالة ()flatten لإنشاء لائحة تضم جميع عناصر  اللوائح المُنتميةإلى deepList، ثم تطبع الناتج:

fun main(args: Array<String>) {
val deepList = listOf(listOf(1), listOf(2, 3), listOf(4, 5, 6))
println(deepList.flatten()) // [1, 2, 3, 4, 5, 6]
}

انظر أيضًا

  • find()‎: تعيد العنصر الأول من المصفوفة أو المجموعة التي استُدعيت عبرها والذي يحقق الشرط المنطقي predicate المُمرّر إليها. وإن لم يكن هناك أي عنصر يحقق ذلك فستعيد null.
  • findLast()‎: تعيد العنصر الأخير من المصفوفة أو المجموعة التي استُدعيت عبرها والذي يحقق الشرط المنطقي predicate المُمرّر إليها. وإن لم يكن هناك أي عنصر يحقق ذلك فستعيد null.

مصادر