区间 ..
1、..
区间是为任何可比较类型定义的。使用 .. 表示一个区间,格式如下:
start .. end
.. 表示的区间是包括首位的,还有一种表示区间的修饰符until,一般用在for循环遍历上,从0开始直到size(不含)。
0 until size
2、灵活使用
区间的使用很灵活,用好可以极大简化代码。在for范围循环借助in关键字,还有!in关键字遍历。
2.1、循环
区间 .. 通常配合for循环一起使用遍历数字。
例:
for (i in 1..4) {
println(i)
}2.2、迭代
区间还可以用来遍历集合、数组等。
例:
val arr: ArrayList<String> = ArrayList()
for (arr in arr) {
println(arr)
}2.3、步长
此外还可以使用step关键字指定区间的步长。指定步长2,打印从1~9之间的数字,输出使用了Kotlin的字符串模板。
start .. end step 步长
例:
for (i in 1..9 step 2) {
print("$i ")
}打印结果:1 3 5 7 9
2.4、结合when
配合when条件判断使用,判断数值是否落在区间内,关于when的用法详见条件语句:if和when
var value = 2
when (value) {
in 2..10 -> println(2) //如果value只在2~10之间则执行该分支
else -> println("")
}
