如何获得索引在一个为每个循环?我想每次迭代都打印数字
例如
for (value in collection) {
if (iteration_no % 2) {
//do something
}
}
在java中,我们有传统的for循环
for (int i = 0; i < collection.length; i++)
如何得到i?
如何获得索引在一个为每个循环?我想每次迭代都打印数字
例如
for (value in collection) {
if (iteration_no % 2) {
//do something
}
}
在java中,我们有传统的for循环
for (int i = 0; i < collection.length; i++)
如何得到i?
当前回答
试试这个;for循环
for ((i, item) in arrayList.withIndex()) { }
其他回答
似乎您真正要找的是filterIndexed
例如:
listOf("a", "b", "c", "d")
.filterIndexed { index, _ -> index % 2 != 0 }
.forEach { println(it) }
结果:
b
d
Android中forEachIndexed的工作示例
用索引迭代
itemList.forEachIndexed{index, item ->
println("index = $index, item = $item ")
}
使用索引更新列表
itemList.forEachIndexed{ index, item -> item.isSelected= position==index}
你可以初始化一个变量counter=0并在循环中增加:
for (value in collection){//do something then count++ }`
试试这个;for循环
for ((i, item) in arrayList.withIndex()) { }
请试一次。
yourList?.forEachIndexed { index, data ->
Log.d("TAG", "getIndex = " + index + " " + data);
}