如何在Kotlin的forEach循环中获取当前元素的索引?
大家好!我刚开始学习Kotlin,在处理循环时遇到了问题。在Java中,我习惯使用带索引的普通for循环,例如:
```java
for (int i = 0; i < list.size(); i++) {
System.out.println(i + ": " + list.get(i));
}
```
但在Kotlin中,我看到大家都推荐使用forEach:
```kotlin
list.forEach { item ->
println(item)
}
```
这很方便,但如果我不仅需要元素本身,还需要它的索引呢?例如,我想输出带编号的任务列表:
```kotlin
val tasks = listOf("买面包", "洗碗", "做作业")
tasks.forEach { task ->
println("$index: $task") // 错误!index未定义
}
```
这里会出现编译错误,因为变量index不存在。我尝试使用一个单独的计数器:
```kotlin
var index = 0
tasks.forEach { task ->
println("$index: $task")
index++
}
```
但这看起来很笨拙且不美观。而且,如果我使用并行