الفرق بين المراجعتين ل"Kotlin/collections/unzip"

من موسوعة حسوب
اذهب إلى التنقل اذهب إلى البحث
(أنشأ الصفحة ب'<noinclude>{{DISPLAYTITLE: الدالة <code>unzip()‎</code> في لغة Kotlin}}</noinclude> تعيد الدالة<code>unzip()‎</code> Kotlin/Set|مجموعة...')
 
سطر 1: سطر 1:
 
<noinclude>{{DISPLAYTITLE: الدالة <code>unzip()‎</code> في لغة Kotlin}}</noinclude>
 
<noinclude>{{DISPLAYTITLE: الدالة <code>unzip()‎</code> في لغة Kotlin}}</noinclude>
تعيد الدالة<code>unzip()‎</code> [[Kotlin/Set|مجموعة من النوع Set]] تضم جميع عناصر [[Kotlin/Array|المصفوفة]]   أو [[Kotlin/Iterable|المجموعة التكرارية]]  التي استُدعيت عبرها و<nowiki/>[[Kotlin/Iterable|المجموعة التكرارية]] المُمرّرة.
+
تعيد الدالة<code>unzip()‎</code> [[Kotlin/Pair|زوجًا]] مكونًا من [[Kotlin/List|لائحتين]]، حيث [[Kotlin/List|اللائحة]] الأولي مكونة من العناصر الأولى  من كل زوج من  [[Kotlin/Array|المصفوفة]]  أو [[Kotlin/Iterable|المجموعة التكرارية]]  التي استُدعيت عبرها،  و<nowiki/>[[Kotlin/List|اللائحة]] الثانية مكونة من العناصر الثانية من كل زوج من  [[Kotlin/Array|المصفوفة]]  أو [[Kotlin/Iterable|المجموعة التكرارية]]  التي استُدعيت عبرها<nowiki/>.
 
 
تحافظ المجموعة المُعادة على ترتيب التكرار الأصلي [[Kotlin/Array|للمصفوفة]]   أو [[Kotlin/Iterable|المجموعة التكرارية]] التي استُدعيت عبرها، عناصر [[Kotlin/Iterable|المجموعة التكرارية]] المُمرّرة الفريدة ستوضع في النهاية.  
 
 
==البنية العامة==
 
==البنية العامة==
 
يمكن استدعاء الدالة<code>unzip()‎</code>  عبر [[Kotlin/Array|المصفوفات]]:<syntaxhighlight lang="kotlin">
 
يمكن استدعاء الدالة<code>unzip()‎</code>  عبر [[Kotlin/Array|المصفوفات]]:<syntaxhighlight lang="kotlin">
infix fun <T> Array<out T>.union(other: Iterable<T>): Set<T>  
+
fun <T, R> Array<out Pair<T, R>>.unzip(): Pair<List<T>, List<R>>  
infix fun ByteArray.union(other: Iterable<Byte>): Set<Byte>
 
infix fun ShortArray.union(
 
    other: Iterable<Short>
 
): Set<Short>
 
infix fun IntArray.union(other: Iterable<Int>): Set<Int>
 
infix fun LongArray.union(other: Iterable<Long>): Set<Long>
 
infix fun FloatArray.union(
 
    other: Iterable<Float>
 
): Set<Float>
 
infix fun DoubleArray.union(
 
    other: Iterable<Double>
 
): Set<Double>
 
infix fun BooleanArray.union(
 
    other: Iterable<Boolean>
 
): Set<Boolean>  
 
infix fun CharArray.union(other: Iterable<Char>): Set<Char>  
 
  
 
</syntaxhighlight>يمكن استدعاء الدالة<code>unzip()‎</code>  عبر  [[Kotlin/Iterable|المجموعات التكرارية]]:<syntaxhighlight lang="kotlin">
 
</syntaxhighlight>يمكن استدعاء الدالة<code>unzip()‎</code>  عبر  [[Kotlin/Iterable|المجموعات التكرارية]]:<syntaxhighlight lang="kotlin">
infix fun <T> Iterable<T>.union(other: Iterable<T>): Set<T>
+
fun <T, R> Iterable<Pair<T, R>>.unzip(): Pair<List<T>, List<R>>  
  
 
</syntaxhighlight>
 
</syntaxhighlight>
 
==القيمة المُعادة==
 
==القيمة المُعادة==
[[Kotlin/Set|مجموعة من النوع Set]] تضم جميع عناصر [[Kotlin/Array|المصفوفة]] أو [[Kotlin/Iterable|المجموعة التكرارية]]  التي استُدعيت عبرها و<nowiki/>[[Kotlin/Iterable|المجموعة التكرارية]] المُمرّرة.
+
[[Kotlin/Pair|زوج]] مكون من [[Kotlin/List|لائحتين]]، حيث [[Kotlin/List|اللائحة]] الأولي مكونة من العناصر الأولى من كل زوج من [[Kotlin/Array|المصفوفة]] أو [[Kotlin/Iterable|المجموعة التكرارية]]  التي استُدعيت عبرها،  و<nowiki/>[[Kotlin/List|اللائحة]] الثانية مكونة من العناصر الثانية من كل زوج من  [[Kotlin/Array|المصفوفة]] أو [[Kotlin/Iterable|المجموعة التكرارية]] التي استُدعيت عبرها.
 
==أمثلة==
 
==أمثلة==
 
===استخدام الدالة <code>()unzip</code> مع المصفوفات===
 
===استخدام الدالة <code>()unzip</code> مع المصفوفات===

مراجعة 11:56، 24 يونيو 2018

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

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

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

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

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

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

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

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

أمثلة

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

تعرّف الشيفرة الآتية  مصفوفة باسم array  مكونة من ستة أعداد باستخدام الدالة ()arrayOf‎، ثم تعرّف   لائحة متغيرة باسم mutablelistOf  مكونة من ثلاثة أعداد باستخدام الدالة ()mutableListOf، ثم تستخدم الدالة()unzip على array وتمرر mutablelistOf  كوسيط، ثم تطبع الناتج:

fun main(args: Array<String>) {
val array = arrayOf(4, 5, 6, 4, 1, 6)
val mutableList = mutableListOf(1, 2, 3)
  
println(array.union(mutableList)) // [4, 5, 6, 1, 2, 3]
}

أنظر أيضًا

مصادر