الدالة flatten()
في Kotlin
< Kotlin | collections
تعيد الدالة flatten()
قائمة واحدة تحوي جميع عناصر المصفوفات أو المجموعات المتشعبة ضمن المصفوفة أو المجموعة التي استُدعيت معها.
البنية العامة
يمكن استدعاء الدالة flatten()
مع المصفوفات:
fun <T> Array<out Array<out T>>.flatten(): List<T>
ويمكن استدعاؤها مع المجموعات:
fun <T> Iterable<Iterable<T>>.flatten(): List<T>
القيم المعادة
تُعاد قائمة واحدة تحوي جميع عناصر المصفوفات أو المجموعات المتشعبة ضمن المصفوفة أو المجموعة المعطاة.
أمثلة
استخدام الدالة ()flatten
مع المصفوفات
تعرِّف الشيفرة الآتية مصفوفة باسم deepArray
باستخدام الدالة ()arrayOf
، ثمَّ تستخدم الدالة ()flatten
لوضع جميع عناصر المصفوفات المتشعبة ضمن تلك المصفوفة في قائمة واحدة:
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
لوضع جميع عناصر القوائم المتشعبة ضمن تلك القائمة في قائمة واحدة:
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]
}
انظر أيضًا
- الدالة
contentDeepEquals()
: تتحقق من تساوي مصفوفتين بالعُمق، أي أنهما تحتويان على نفس العناصر وبنفس الترتيب. - الدالة
flatMap()
: تعيد قائمةً تضم ناتج تطبيق الدالةtransform()
المُمرّرة إليها على عناصر المصفوفة، أو المجموعة، أو الخريطة التي استُدعيت معها.