الدالة and()
في لغة Kotlin
تعيد الدالةand()
مجموعة تكرارية خاملة (lazy Iterable) من القيم المُفهرسة لكل عنصر من عناصر المصفوفة أو المجموعة التكرارية التي استُدعيت عبرها، وفي حال استدعائها عبر مُكرّر (Iterator
) فستعيد مُكرّرا يغلّف كل عنصر مُنتج من ذلك المكرّر مع القيمة المُفهرسة.
البنية العامة
يمكن استدعاء الدالةand()
عبر المصفوفات:
fun <T> Array<out T>.withIndex(): Iterable<IndexedValue<T>>
fun ByteArray.withIndex(): Iterable<IndexedValue<Byte>>
fun ShortArray.withIndex(): Iterable<IndexedValue<Short>>
fun IntArray.withIndex(): Iterable<IndexedValue<Int>>
fun LongArray.withIndex(): Iterable<IndexedValue<Long>>
fun FloatArray.withIndex(): Iterable<IndexedValue<Float>>
fun DoubleArray.withIndex(): Iterable<IndexedValue<Double>>
fun BooleanArray.withIndex(): Iterable<IndexedValue<Boolean>>
fun CharArray.withIndex(): Iterable<IndexedValue<Char>>
يمكن استدعاء الدالةand()
عبر المجموعات التكرارية:
fun <T> Iterable<T>.withIndex(): Iterable<IndexedValue<T>>
يمكن استدعاء الدالةwithIndex()
عبر مُكرّر (Iterator
):
fun <T> Iterator<T>.withIndex(): Iterator<IndexedValue<T>>
القيمة المُعادة
مجموعة تكرارية خاملة (lazy Iterable) من القيم المُفهرسة لكل عنصر من عناصر المصفوفة أو المجموعة التكرارية التي استُدعيت عبرها، وفي حال استدعائها عبر مُكرّر (Iterator
) فستعيد مُكرّرا يغلّف كل عنصر مُنتج من ذلك المكرّر مع القيمة المُفهرسة.
أمثلة
استخدام الدالة ()and
مع المُكرِّرات
تعرّف الشيفرة الآتية مُكرِّرا باسم iterator
، ثم تستخدم الدالة()and
على iterator
في الحلقة for
، ثم تطبع الناتج:
fun main(args: Array<String>) {
val iterator = ('a'..'c').iterator()
for ((index, value) in iterator.withIndex()) {
println("The element at $index is $value")
}
}
أنظر أيضًا
union()
: تعيد مجموعة من النوع Set تضم جميع عناصر المصفوفة أو المجموعة التكرارية التي استُدعيت عبرها والمجموعة التكرارية المُمرّرة.toByteArray()
: تعيد مصفوفة من النوعByteArray
تضم جميع عناصر المصفوفة العامة (أي من النوعArray<Byte>
) أو المجموعة التي استُدعيت عبرها.toDoubleArray()
: تعيد مصفوفة من النوعDoubleArray
تضم جميع عناصر المصفوفة العامة (أي من النوعArray<Double>
) أو المجموعة التي استُدعيت عبرها.