الفرق بين المراجعتين لصفحة: «Kotlin/collections/unzip»

من موسوعة حسوب
لا ملخص تعديل
طلا ملخص تعديل
 
(مراجعتان متوسطتان بواسطة مستخدمين اثنين آخرين غير معروضتين)
سطر 1: سطر 1:
<noinclude>{{DISPLAYTITLE: الدالة <code>unzip()‎</code> في لغة Kotlin}}</noinclude>
<noinclude>{{DISPLAYTITLE: الدالة <code>unzip()‎</code> في Kotlin}}</noinclude>
تعيد الدالة<code>unzip()‎</code> [[Kotlin/Pair|زوجًا]] مكونًا من [[Kotlin/List|لائحتين]]، حيث [[Kotlin/List|اللائحة]] الأولي مكونة من العناصر الأولى من كل زوج من [[Kotlin/Array|المصفوفة]] أو [[Kotlin/Iterable|المجموعة التكرارية]]  التي استُدعيت عبرها،  و<nowiki/>[[Kotlin/List|اللائحة]] الثانية مكونة من العناصر الثانية من كل زوج من [[Kotlin/Array|المصفوفة]]  أو  [[Kotlin/Iterable|المجموعة التكرارية]]  التي استُدعيت عبرها<nowiki/>.
<nowiki/><nowiki/>تعيد الدالة <code>unzip()‎</code> قائمتين، إذ تحتوي الأولى على القيم الأولى لكل زوج من أزواج [[Kotlin/Array|المصفوفة]] أو [[Kotlin/Iterable|المجموعة التكرارية]] التي استُدعيت معها وتحتوي الثانية على القيم الثانية لكل زوج من تلك الأزواج.
==البنية العامة==
==البنية العامة==
يمكن استدعاء الدالة<code>unzip()‎</code> عبر [[Kotlin/Array|المصفوفات]]:<syntaxhighlight lang="kotlin">
يمكن استدعاء الدالة <code>unzip()‎</code> مع [[Kotlin/Array|المصفوفات]] و<nowiki/>[[Kotlin/Iterable|المجموعات التكرارية]]:<syntaxhighlight lang="kotlin">
fun <T, R> Array<out Pair<T, R>>.unzip(): Pair<List<T>, List<R>>  
fun <T, R> Array<out Pair<T, R>>.unzip(): Pair<List<T>, List<R>>  


</syntaxhighlight>يمكن استدعاء الدالة<code>unzip()‎</code>  عبر  [[Kotlin/Iterable|المجموعات التكرارية]]:<syntaxhighlight lang="kotlin">
fun <T, R> Iterable<Pair<T, R>>.unzip(): Pair<List<T>, List<R>>  
fun <T, R> Iterable<Pair<T, R>>.unzip(): Pair<List<T>, List<R>>  


</syntaxhighlight>
</syntaxhighlight>
==القيمة المُعادة==
==القيمة المعادة==
[[Kotlin/Pair|زوج]] مكون من [[Kotlin/List|لائحتين]]، حيث [[Kotlin/List|اللائحة]] الأولي مكونة من العناصر الأولى من كل زوج من [[Kotlin/Array|المصفوفة]] أو [[Kotlin/Iterable|المجموعة التكرارية]]  التي استُدعيت عبرها،  و<nowiki/>[[Kotlin/List|اللائحة]] الثانية مكونة من العناصر الثانية من كل زوج من [[Kotlin/Array|المصفوفة]] أو [[Kotlin/Iterable|المجموعة التكرارية]] التي استُدعيت عبرها.
تعاد قائمتين؛ تحتوي الأولى على القيم الأولى لكل زوج من أزواج [[Kotlin/Array|المصفوفة]] أو [[Kotlin/Iterable|المجموعة التكرارية]] المعطاة وتحتوي الثانية على القيم الثانية لكل زوج من تلك الأزواج.
 
==أمثلة==
==أمثلة==
===استخدام الدالة <code>()unzip</code> مع المصفوفات===
استعمال الدالة <code>()unzip</code> لفصل مفاتيح الأزواج عن القيم المرتبطة بها:<syntaxhighlight lang="kotlin">
تعرّف الشيفرة الآتية  <nowiki/>[[Kotlin/Array|مصفوفة]] باسم <code>array</code>  مكونة من ثلاثة [[Kotlin/Pair|أزواج]] باستخدام الدالة <code>()arrayOf‎</code>،<nowiki/> ثم تستخدم الدالة<code>()unzip</code> على <code>array</code>، ثم تطبع الناتج:<syntaxhighlight lang="kotlin">
fun main(args: Array<String>) {
fun main(args: Array<String>) {
val array = arrayOf(1 to 'a', 2 to 'b', 3 to 'c')
    val array = arrayOf(1 to 'a', 2 to 'b', 3 to 'c')
      
 
println(array.unzip()) // ([1, 2, 3], [a, b, c])
     println(array.unzip()) // ([1, 2, 3], [a, b, c])
 
 
}
}
</syntaxhighlight>
</syntaxhighlight>
==أنظر أيضًا==
==انظر أيضًا==
*<code>[[Kotlin/collections/union|union()]]</code>‎ : تعيد مجموعة من النوع Set تضم جميع عناصر <nowiki/>[[Kotlin/Array|المصفوفة]]  أو المجموعة التكرارية  التي استُدعيت عبرها والمجموعة التكرارية المُمرّرة.
*الدالة <code>[[Kotlin/collections/zip|zip()‎]]</code>: تنشئ أزواجًا من عناصر كائنين لها نفس الفهرس، أو تنشئ قيمًا عبر تمرير عناصر لها نفس الفهرس تجلب من كائنين مختلفين إلى دالة معينة. 
*<code>[[Kotlin/collections/toByteArray|toByteArray()]]</code>‎ : تعيد <nowiki/>[[Kotlin/Array|مصفوفة]] من النوع <code>ByteArray</code>تضم جميع عناصر <nowiki/>[[Kotlin/Array|المصفوفة العامة]] (أي من النوع <code>Array<Byte></code>) أو <nowiki/>[[Kotlin/collections|المجموعة]]  التي استُدعيت عبرها.
*<code>[[Kotlin/collections/toDoubleArray|toDoubleArray()]]</code>‎ : تعيد [[Kotlin/Array|مصفوفة]] من النوع <code>DoubleArray</code>تضم جميع عناصر [[Kotlin/Array|المصفوفة العامة]] (أي من النوع <code>Array<Double>‎</code>) أو  [[Kotlin/collections|المجموعة]]  التي استُدعيت عبرها.
==مصادر==
==مصادر==
* [https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/unzip.html الدالة  unzip()‎ في التوثيق الرسميّ للمكتبة القياسيّة في لغة Kotlin.]
*[https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/unzip.html صفحة الدالة unzip()‎ في التوثيق الرسميّ للمكتبة القياسيّة في لغة Kotlin.]
[[تصنيف:Kotlin]]
[[تصنيف:Kotlin]]
[[تصنيف:Kotlin Functions]]
[[تصنيف:Kotlin Function]]
[[تصنيف:Kotlin Collection]]

المراجعة الحالية بتاريخ 11:51، 8 سبتمبر 2018

تعيد الدالة unzip()‎ قائمتين، إذ تحتوي الأولى على القيم الأولى لكل زوج من أزواج المصفوفة أو المجموعة التكرارية التي استُدعيت معها وتحتوي الثانية على القيم الثانية لكل زوج من تلك الأزواج.

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

يمكن استدعاء الدالة unzip()‎ مع المصفوفات والمجموعات التكرارية:

fun <T, R> Array<out Pair<T, R>>.unzip(): Pair<List<T>, List<R>> 

fun <T, R> Iterable<Pair<T, R>>.unzip(): Pair<List<T>, List<R>>

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

تعاد قائمتين؛ تحتوي الأولى على القيم الأولى لكل زوج من أزواج المصفوفة أو المجموعة التكرارية المعطاة وتحتوي الثانية على القيم الثانية لكل زوج من تلك الأزواج.

أمثلة

استعمال الدالة ()unzip لفصل مفاتيح الأزواج عن القيم المرتبطة بها:

fun main(args: Array<String>) {
    val array = arrayOf(1 to 'a', 2 to 'b', 3 to 'c')

    println(array.unzip()) // ([1, 2, 3], [a, b, c])

}

انظر أيضًا

  • الدالة zip()‎: تنشئ أزواجًا من عناصر كائنين لها نفس الفهرس، أو تنشئ قيمًا عبر تمرير عناصر لها نفس الفهرس تجلب من كائنين مختلفين إلى دالة معينة. 

مصادر