fun forLoopListItems() {
val items = listOf("apple", "banana", "kiwifruit")
for (i in items) {
if (i.equals("banana")) {
println("position is ${i.indices}")
}
}
}
这是与 For 循环一起使用的我的 Kotlin 代码。 我试图打印与“香蕉”对应的索引 但结果是“System.out:位置是 0..5” 它是如何变成 0..5 的?
最佳答案
indices
方法为您提供一个范围,在本例中为 0..5
,因为它是在长度为 6 的 String: banana
上调用的。
您可以改为使用索引进行迭代,如下所示:
items.forEachIndexed { i, element ->
if (element == "banana") {
println("position is $i")
}
}
此 post 中列出了使用索引进行迭代的替代方法.
不过,我不确定您是否真的想要显式迭代。也许您可以使用内置函数来查找元素的索引:
println(items.indexOf("banana"))
关于android - 如何在 Android Kotlin 的 For 循环中获取列表项的索引?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49608373/