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

من موسوعة حسوب
اذهب إلى التنقل اذهب إلى البحث
(أنشأ الصفحة ب'<noinclude>{{DISPLAYTITLE: الدالة <code>withIndex()‎</code> في لغة Kotlin}}</noinclude> تعيد الدالة<code>withIndex()‎</code> Kotlin/Pair|زو...')
 
سطر 1: سطر 1:
 
<noinclude>{{DISPLAYTITLE: الدالة <code>withIndex()‎</code> في لغة Kotlin}}</noinclude>
 
<noinclude>{{DISPLAYTITLE: الدالة <code>withIndex()‎</code> في لغة Kotlin}}</noinclude>
تعيد الدالة<code>withIndex()‎</code> [[Kotlin/Pair|زوجًا]] مكونًا من [[Kotlin/List|لائحتين]]، حيث [[Kotlin/List|اللائحة]] الأولي مكونة من العناصر الأولى  من كل زوج من  [[Kotlin/Array|المصفوفة]]  أو  [[Kotlin/Iterable|المجموعة التكرارية]]  التي استُدعيت عبرها،  و<nowiki/>[[Kotlin/List|اللائحة]] الثانية مكونة من العناصر الثانية من كل زوج من [[Kotlin/Array|المصفوفة]] أو  [[Kotlin/Iterable|المجموعة التكرارية]]  التي استُدعيت عبرها<nowiki/>.
+
تعيد الدالة<code>withIndex()‎</code> [[Kotlin/Iterable|مجموعة تكرارية]] خاملة (lazy Iterable) من القيم المُفهرسة لكل عنصر من عناصر [[Kotlin/Array|المصفوفة]]  أو  [[Kotlin/Iterable|المجموعة التكرارية]]  التي استُدعيت عبرها، وفي حال استدعائها عبر [[Kotlin/iterator|مُكرّر]] (<code>Iterator</code>)<nowiki/> فستعيد [[Kotlin/iterator|مُكرّر]]<nowiki/>ا يغلّف كل عنصر مُنتج من ذلك [[Kotlin/iterator|المكرّر]] مع القيمة المُفهرسة.
 
==البنية العامة==
 
==البنية العامة==
 
يمكن استدعاء الدالة<code>withIndex()‎</code>  عبر [[Kotlin/Array|المصفوفات]]:<syntaxhighlight lang="kotlin">
 
يمكن استدعاء الدالة<code>withIndex()‎</code>  عبر [[Kotlin/Array|المصفوفات]]:<syntaxhighlight lang="kotlin">

مراجعة 14:04، 24 يونيو 2018

تعيد الدالةwithIndex()‎ مجموعة تكرارية خاملة (lazy Iterable) من القيم المُفهرسة لكل عنصر من عناصر المصفوفة أو المجموعة التكرارية  التي استُدعيت عبرها، وفي حال استدعائها عبر مُكرّر (Iterator) فستعيد مُكرّرا يغلّف كل عنصر مُنتج من ذلك المكرّر مع القيمة المُفهرسة.

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

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

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

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

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

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

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

أمثلة

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

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

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])
  
}

أنظر أيضًا

مصادر