Kotlin 如何一次迭代列出两项?

Kotlin 如何一次迭代列出两项?,kotlin,Kotlin,有什么好的Kotlin习惯用法可以一次高效地迭代列表中的两项吗 比如: val items = listOf("one", "two", "three", "four") items.forEach(2) { item1, item2 -> println("$item1 and $item2") } 其结果是: one and two three and four 也许

有什么好的Kotlin习惯用法可以一次高效地迭代列表中的两项吗

比如:

val items = listOf("one", "two", "three", "four")

items.forEach(2) { item1, item2 ->
   println("$item1 and $item2")    
}
其结果是:

one and two
three and four

也许最简单的方法就是使用

印刷品:

[1, 2]
[3, 4]
[5, 6]
[7]
1 and 2
3 and 4
5 and 6

如果确保元素数为偶数,则可以使用命名变量访问元素对:

listOf(1, 2, 3, 4, 5, 6)
    .also { require(it.size % 2 == 0) { "Number of elements must be even" } }
    .chunked(2)
    .forEach { (item1, item2) ->
        println("$item1 and $item2")
    }
印刷品:

[1, 2]
[3, 4]
[5, 6]
[7]
1 and 2
3 and 4
5 and 6

也许最简单的方法就是使用

印刷品:

[1, 2]
[3, 4]
[5, 6]
[7]
1 and 2
3 and 4
5 and 6

如果确保元素数为偶数,则可以使用命名变量访问元素对:

listOf(1, 2, 3, 4, 5, 6)
    .also { require(it.size % 2 == 0) { "Number of elements must be even" } }
    .chunked(2)
    .forEach { (item1, item2) ->
        println("$item1 and $item2")
    }
印刷品:

[1, 2]
[3, 4]
[5, 6]
[7]
1 and 2
3 and 4
5 and 6

你到底想对每一对物品做什么?一种可能是
zip
这些列表。看,我没有两张单子。就一个。假设我只想把它们成对地打印出来:)你到底想对每一对物品做什么?一种可能是
zip
这些列表。看,我没有两张单子。就一个。假设我只想成对地打印它们:)