Kotlin 中的 for
循环会迭代提供迭代器的所有内容。 在本文中,您将学习创建for
循环(借助示例)。
与 Java 和其他语言不同,Kotlin 中没有传统的for
循环。
在 Kotlin 中,for
循环用于遍历范围,数组,映射等(提供迭代器的任何对象)。
Kotlin 中for
循环的语法为:
for (item in collection) {
// body of loop
}
示例:遍历范围
fun main(args: Array<String>) {
for (i in 1..5) {
println(i)
}
}
在这里,循环遍历范围并打印单个项目。
运行该程序时,输出为:
1
2
3
4
5
如果循环的主体仅包含一个语句(如上述示例),则不必使用花括号{ }
。
fun main(args: Array<String>) {
for (i in 1..5) println(i)
}
可以使用for
循环遍历一个范围,因为range
提供了一个迭代器。 要了解更多信息,请访问 Kotlin 迭代器。
示例:遍历一个范围的不同方法
fun main(args: Array<String>) {
print("for (i in 1..5) print(i) = ")
for (i in 1..5) print(i)
println()
print("for (i in 5..1) print(i) = ")
for (i in 5..1) print(i) // prints nothing
println()
print("for (i in 5 downTo 1) print(i) = ")
for (i in 5 downTo 1) print(i)
println()
print("for (i in 1..4 step 2) print(i) = ")
for (i in 1..5 step 2) print(i)
println()
print("for (i in 4 downTo 1 step 2) print(i) = ")
for (i in 5 downTo 1 step 2) print(i)
}
运行该程序时,输出为:
for (i in 1..5) print(i) = 12345
for (i in 5..1) print(i) =
for (i in 5 downTo 1) print(i) = 54321
for (i in 1..4 step 2) print(i) = 135
for (i in 4 downTo 1 step 2) print(i) = 531
遍历数组
这是一个遍历String
数组的示例。
fun main(args: Array<String>) {
var language = arrayOf("Ruby", "Koltin", "Python" "Java")
for (item in language)
println(item)
}
运行该程序时,输出为:
Ruby
Koltin
Python
Java
可以遍历带有索引的数组。 例如,
fun main(args: Array<String>) {
var language = arrayOf("Ruby", "Koltin", "Python", "Java")
for (item in language.indices) {
// printing array elements having even index only
if (item%2 == 0) println(language[item])
}
}
运行该程序时,输出为:
Ruby
Python
如果您想了解有关数组的更多信息,请访问 Kotlin 数组。
遍历字符串
fun main(args: Array<String>) {
var text= "Kotlin"
for (letter in text) {
println(letter)
}
}
运行该程序时,输出为:
K
o
t
l
i
n
与数组类似,您可以使用索引遍历String
。 例如,
fun main(args: Array<String>) {
var text= "Kotlin"
for (item in text.indices) {
println(text[item])
}
}
运行该程序时,输出为:
K
o
t
l
i
n
在 Kotin 映射文章中,您将学习使用for
循环遍历映射。