程序的执行语句主要分为3种:顺序语句、条件语句和循环语句
Kotlin 中的条件语句主要有两种实现方式:
- if
- when
if 条件语句
Kotlin 中的 if 语句示例(类似 Java)
fun largeNum4(num1: Int, num2: Int): Int {
var large = 0
if (num1 > num2) {
large = num1;
} else {
large = num2
}
return large;
}
Kotlin 中的 if 语句相比 Java 有一个额外的功能,它可以有返回值,返回值是 if 语句每一个条件中最后一行代码的返回值。因此,上面代码可以简化为以下形式:
fun largeNum5(num1: Int, num2: Int): Int {
val large = if (num1 > num2) {
num1
} else {
num2
}
return large
}
在上面 largeNum5 中, if 语句使用每个条件的最后一行代码作为返回值,并赋值给 large。由于现在没有重新赋值,因此可以使用 val 关键字来声明 large 变量
上面 largeNum5 中,large 其实是一个多余的变量,可以直接将 if 语句返回,代码将会更加精简,示例如下:
fun largeNum6(num1: Int, num2: Int): Int {
return if (num1 > num2) {
num1
} else {
num2
}
}
Kotlin 语法糖 当一个函数只有一行代码时,可以省略函数体部分,直接将这一行代码使用等号连接在函数定义的尾部。虽然上述代码中的 largeNum6 函数不止一行代码,但是它和只有一行代码的作用是相同的,只是返回了以下 if 语句的返回值而已,符合该语法糖的使用条件。代码可以进一步精简:
fun largeNum7(num1: Int, num2: Int) = if (num1 > num2) {
num1
} else {
num2
}
当然,还可以结合 Kotlin 更多语法来使用,代码可以精简为如下实例:
fun largeNum8(num1: Int, num2: Int) = if (num1 > num2) num1 else num2