الفرق بين المراجعتين لصفحة: «Kotlin/collections/flatten»
< Kotlin | collections
لا ملخص تعديل |
جميل-بيلوني (نقاش | مساهمات) ط مراجعة وتدقيق. |
||
سطر 1: | سطر 1: | ||
<noinclude>{{DISPLAYTITLE: الدالة <code>flatten()</code> في | <noinclude>{{DISPLAYTITLE: الدالة <code>flatten()</code> في Kotlin}}</noinclude> | ||
تعيد الدالة<code>flatten()</code> | تعيد الدالة <code>flatten()</code> قائمة واحدة تحوي جميع عناصر [[Kotlin/Array|المصفوفات]] أو [[Kotlin/collections|المجموعات]] المتشعبة ضمن [[Kotlin/Array|المصفوفة]] أو [[Kotlin/collections|المجموعة]] التي استُدعيت معها. | ||
==البنية العامة== | ==البنية العامة== | ||
يمكن استدعاء الدالة<code>flatten()</code> | يمكن استدعاء الدالة <code>flatten()</code> مع [[Kotlin/Array|المصفوفات]]:<syntaxhighlight lang="kotlin"> | ||
fun <T> Array<out Array<out T>>.flatten(): List<T> | fun <T> Array<out Array<out T>>.flatten(): List<T> | ||
</syntaxhighlight> | </syntaxhighlight>ويمكن استدعاؤها مع [[Kotlin/Array|المجموعات]]:<syntaxhighlight lang="kotlin"> | ||
fun <T> Iterable<Iterable<T>>.flatten(): List<T> | fun <T> Iterable<Iterable<T>>.flatten(): List<T> | ||
</syntaxhighlight> | </syntaxhighlight> | ||
==القيم المٌعادة== | ==القيم المٌعادة== | ||
تُعاد قائمة واحدة تحوي جميع عناصر [[Kotlin/Array|المصفوفات]] أو [[Kotlin/collections|المجموعات]] المتشعبة ضمن [[Kotlin/Array|المصفوفة]] أو [[Kotlin/collections|المجموعة]] المعطاة. | |||
==أمثلة== | ==أمثلة== | ||
===استخدام الدالة <code>()flatten</code> مع المصفوفات=== | ===استخدام الدالة <code>()flatten</code> مع المصفوفات=== | ||
تعرِّف الشيفرة الآتية <nowiki/>[[Kotlin/Array|مصفوفة]] باسم <code>deepArray</code> باستخدام الدالة <code>()arrayOf</code>، ثمَّ تستخدم الدالة <code>()flatten</code> لوضع جميع عناصر المصفوفات المتشعبة ضمن تلك المصفوفة في قائمة واحدة:<syntaxhighlight lang="kotlin"> | |||
fun main(args: Array<String>) { | fun main(args: Array<String>) { | ||
val deepArray = arrayOf( | val deepArray = arrayOf( | ||
arrayOf(1), | |||
arrayOf(2, 3), | |||
arrayOf(4, 5, 6) | |||
) | ) | ||
println(deepArray.flatten()) // [1, 2, 3, 4, 5, 6] | println(deepArray.flatten()) // [1, 2, 3, 4, 5, 6] | ||
} | } | ||
</syntaxhighlight> | </syntaxhighlight> | ||
===استخدام الدالة <code>()flatten</code> مع اللوائح=== | ===استخدام الدالة <code>()flatten</code> مع اللوائح=== | ||
تعرف الشيفرة | تعرف الشيفرة الآتية قائمة<nowiki/><nowiki/> باسم <code>deepList</code> باستخدام الدالة <code>()listOf</code> ثمَّ تستخدم الدالة <code>()flatten</code> لوضع جميع عناصر القوائم المتشعبة ضمن تلك القائمة في قائمة واحدة:<syntaxhighlight lang="kotlin"> | ||
fun main(args: Array<String>) { | fun main(args: Array<String>) { | ||
val deepList = listOf(listOf(1), listOf(2, 3), listOf(4, 5, 6)) | val deepList = listOf(listOf(1), listOf(2, 3), listOf(4, 5, 6)) | ||
println(deepList.flatten()) // [1, 2, 3, 4, 5, 6] | println(deepList.flatten()) // [1, 2, 3, 4, 5, 6] | ||
} | } | ||
</syntaxhighlight> | </syntaxhighlight> | ||
==انظر أيضًا== | ==انظر أيضًا== | ||
*<code>[[Kotlin/collections/ | *الدالة <code>[[Kotlin/collections/contentDeepEquals|contentDeepEquals()]]</code>: تتحقق من تساوي مصفوفتين بالعُمق، أي أنهما تحتويان على نفس العناصر وبنفس الترتيب. | ||
*<code>[[Kotlin/collections/ | * الدالة <code>[[Kotlin/collections/flatMap|flatMap()]]</code>: تعيد قائمةً تضم ناتج تطبيق الدالة <code>transform()</code> المُمرّرة إليها على عناصر <nowiki/>[[Kotlin/Array|المصفوفة]]، أو <nowiki/>[[Kotlin/collections|المجموعة]]، أو الخريطة التي استُدعيت معها. | ||
==مصادر== | ==مصادر== | ||
*[https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/flatten.html الدالة flatten() في التوثيق الرسميّ للمكتبة القياسيّة في لغة Kotlin.] | *[https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/flatten.html الدالة flatten() في التوثيق الرسميّ للمكتبة القياسيّة في لغة Kotlin.] | ||
[[تصنيف:Kotlin]] | [[تصنيف:Kotlin]] | ||
[[تصنيف:Kotlin Functions]] | [[تصنيف:Kotlin Functions]] |
مراجعة 12:31، 23 يوليو 2018
تعيد الدالة 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()
المُمرّرة إليها على عناصر المصفوفة، أو المجموعة، أو الخريطة التي استُدعيت معها.