Cómo obtener el índice actual del elemento en un bucle forEach en Kotlin
¡Hola, colegas! Acabo de empezar a aprender Kotlin y me encontré con un problema al trabajar con bucles. En Java solía usar un for normal con índice, por ejemplo:
```java
for (int i = 0; i < list.size(); i++) {
System.out.println(i + ": " + list.get(i));
}
```
Pero en Kotlin veo que todos recomiendan usar forEach:
```kotlin
list.forEach { item ->
println(item)
}
```
Esto es conveniente, pero ¿qué pasa si necesito no solo el elemento en sí, sino también su índice? Por ejemplo, quiero mostrar una lista de tareas con números:
```kotlin
val tasks = listOf("Comprar pan", "Lavar los platos", "Hacer la tarea")
tasks.forEach { task ->
println("$index: $task") // ¡Error! index no está definido
}
```
Aquí obtengo un error de compilación porque la variable index no existe. Intenté usar un contador separado:
```kotlin
var index = 0
tasks.forEach { task ->
println("$index: $task")
index++
}
```
Pero esto parece un parche y no es elegante. Además, si uso un bucle paralel...