while循环
Kotlin的while循环和do-while循环的语法和java一样
1 | // 当condition为true时执行 |
for循环
区间和数列
在Kotlin中,没有传统的JAVA for循环,为了替代这种最常见的for循环,Kotlin使用了区间的概念。
区间本质上是两个值的间隔,这两个值通常是数字,一个起始值,一个结束值。使用 .. 运算符表示区间:
1 | val oneToTen = 1 .. 10 // ..是包含结束的封闭区间,包含10 |
使用when实现Fizz-Buzz游戏
1 | fun fizzBuzz(i: Int) = when { |
我们修改规则,从100开始倒计数并且只计算偶数
1 | for(i in 100 downTo 1 setp 2) { |
因为..语法创建的始终是包含结束值得闭区间,若需要不包含结束值的半闭合区间,可以使用until函数,例如循环for(i in 0 until size),等同于for(i in 0 .. size -1),但前者更加方便,意图更加清晰。
迭代map
1 | val binaryReps = TreeMap<Char, String>() // 字符的二进制map |
使用”in”检查集合和区间的成员
使用in检查一个值是否在区间中,或者使用!in检查一个值是否不在区间中
1 | fun isLetter(c: Char) = c in 'a'..'f'|| c in 'A'..'F' |