Kotlin中的控制流:if、when、for、while

kotlin官方文档 https://www.kotlincn.net/docs/reference/
1. if条件控制
- if的常规使用和java没有任何的区别
fun main(args: Array) {
//条件控制if测试
var x = 0
if(x>0){
println(“x 大于 0”)
}else if(x==0){
println(“x 等于 0”) // x 等于 0
}else{
println(“x 小于 0”)
}
val m = 5
if(m in 1..8){ //区间的使用方法
println("m在区间内")
}
}
-
当然
kotlin
中的if
是有返回值的,返回值是每一个分支的最后一行代码(或者表达式),也正是如此 ,一个完备的if else
语句是可以充当三目运算符使用的fun main(args: Array<String>) { var a = 1 var b = 2 val c = if (a>=b) a else b //相当于java中的三目运算符 println("c 的值为 $c") // c 的值为 2 }
2. when的用法
在 Kotlin
中是没有 switch
概念的,取而代之的是 when
表达式,when
表达式不禁可以完成 switch
表达式的全部功能,甚至在功能上做了更多的补充
fun main(args: Array<String>) {
// when的使用方式
var n = 0
when (n) {
// -> 相当于以前的 :,不同的是 :的前面可以是单个表达式或者多个表达式的组合
0, 1 -> println("n == 0 or n == 1")
//else相当于default
else -> println("otherwise")
}
when (n) {
1 -> println("n == 1")
2 -> println("n == 2")
else -> { // 注意这个块
println("n 不是 1