Kotlin 的 for 循环和 Java 的差别在:
Java 用 for -i 的形式,Kotlin 用 for - in 、 until 、downTo 的形式。
for - in 形式
适用于升序区间。
for - in 形式,两端都是闭区间 。所谓闭区间,就是两端包含在区间内。
如 [0,5] 闭区间包括 0 和 5 。
fun main(){
for (i in 0..10){
println(i)
}
}
运行结果是,
0
1
2
3
4
5
6
7
8
9
10
until 形式
适用于升序区间。
until 形式,是左闭右开区间 。所谓左闭右开区间,就是左边包含在区间内,右边包不含在区间内。
如 [0,5) 区间包括 0 但不包括 5 。
fun main(){
for (i in 0 until 10){
println(i)
}
}
运行结果是,
0
1
2
3
4
5
6
7
8
9
downTo 形式
适用于降序区间。
downTo 形式好比降序的 for - in 形式。
fun main(){
for (i in 10 downTo 1){
println(i)
}
}
运行结果是
10
9
8
7
6
5
4
3
2
1
step
step 用于在指定区间内递增。
fun main(){
for (i in 0..10 step 3){
println(i)
}
}
类似 Java for -i 的形式的 i = i + 3 的效果。
运行结果,
0
3
6
9