📅  最后修改于: 2023-12-03 15:32:29.923000             🧑  作者: Mango
For循环是一种常用的控制流结构,可以重复执行某些操作特定次数,或者在特定范围内遍历集合等数据结构中的元素。Kotlin的for循环与其他编程语言中的for循环类似,但也有一些特定的用法。
for (item in collection) {
// 代码块
}
其中,collection
可以是数组、列表、集合等 iterable 类型的对象。在代码块中,可以使用item
来访问集合中的每个元素。item
的类型会自动推断出来,也可以手动声明类型,例如:
for (item: Int in collectionOfInt) {
println(item)
}
Range表达式是Kotlin中常用的一种表示范围的操作符,可以用于for循环的计数器。
for (i in 0..9) { // 闭区间,包含0和9
// 代码块
}
for (i in 0 until 10) { // 左闭右开区间,包含0但不包含10
// 代码块
}
遍历Map时,可以使用Map.Entry
对象来获取键值对,嵌套循环即可完成遍历。
val map = mapOf("a" to 1, "b" to 2, "c" to 3)
for ((key, value) in map) {
println("$key -> $value")
}
有时需要同时获取集合中的元素及其索引,可以使用withIndex()
方法来实现。
val list = listOf("a", "b", "c")
for ((index, item) in list.withIndex()) {
println("item $index is $item")
}
在for循环中,可以嵌套另一个for循环,以遍历多维数组或二维矩阵等。
val matrix = arrayOf(
intArrayOf(1, 2, 3),
intArrayOf(4, 5, 6),
intArrayOf(7, 8, 9)
)
for (row in matrix) {
for (item in row) {
print("$item ")
}
println()
}
以上是Kotlin for循环的基本用法及一些常见用例。掌握好for循环,可以更方便地遍历集合、数组等数据结构,提高代码的可读性和可维护性。