الدالة withIndex()
في Kotlin
< Kotlin | collections
تعيد الدالة withIndex()
مجموعة تكرارية خاملة (lazy Iterable) من القيم المُفهرسة لكل عنصر من عناصر المصفوفة أو المجموعة التكرارية التي استُدعيت معها، أو تعيد مُكرّرًا (iterator) يغلّف كل عنصر أنتجه المكرّر (Iterator) المستدعى مع الدالة مع القيمة المُفهرسة أي يعيد القيمة مع فهرسها.
البنية العامة
يمكن استدعاء الدالة withIndex()
مع المصفوفات أو المجموعات التكرارية أو المكرِّرات:
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>>
fun <T> Iterable<T>.withIndex(): Iterable<IndexedValue<T>>
fun <T> Iterator<T>.withIndex(): Iterator<IndexedValue<T>>
القيمة المعادة
تعاد مجموعة تكرارية خاملة (lazy Iterable) من القيم المُفهرسة لكل عنصر من عناصر المصفوفة أو المجموعة التكرارية (iterable) المعطاة، أو يعاد مُكرّر يغلّف كل عنصر أنتجه المكرّر (iterator) إن أعطي مع القيمة المُفهرسة.
أمثلة
استعمال الدالة ()withIndex
مع مكرِّر وحلقة تكرارية (الحلقة for
):
fun main(args: Array<String>) {
val iterator = ('a'..'c').iterator()
for ((index, value) in iterator.withIndex()) {
println("The element at $index is $value")
}
}
ناتج تنفيذ الشيفرة السابقة هو:
The element at 0 is a
The element at 1 is b
The element at 2 is c
انظر أيضًا
union()
: تعيد مجموعة من النوع Set تضم جميع عناصر المصفوفة أو المجموعة التكرارية التي استُدعيت عبرها والمجموعة التكرارية المُمرّرة.toByteArray()
: تعيد مصفوفة من النوعByteArray
تضم جميع عناصر المصفوفة العامة (أي من النوعArray<Byte>
) أو المجموعة التي استُدعيت عبرها.toDoubleArray()
: تعيد مصفوفة من النوعDoubleArray
تضم جميع عناصر المصفوفة العامة (أي من النوعArray<Double>
) أو المجموعة التي استُدعيت عبرها.