📜  Kotlin如果表达式

📅  最后修改于: 2021-01-05 07:16:05             🧑  作者: Mango

Kotlin if表达

在Kotlin中, if是一个表达式,该表达式返回一个值。用于控制程序结构的流程。 Kotlin中有多种if表达式类型。

  • if-else表达式
  • if-else if-else梯形表达式
  • 嵌套if表达式

传统的if语句

传统if语句的语法

if(condation){
//code statement
}

传统if语句的语法

if(condation){
//code statement
}
else{
//code statement
}

Kotlin if-else表达式

好像它不是一个独立的表达式一样,它与if-else表达式一起使用,并且if-else表达式的结果分配到变量中。

if-else表达式的语法

val returnValue = if (condation) {
     //code statement
    } else {
     // code statement
    }
    println(returnValue)

Kotlin if-else表达式示例

让我们看一个if-else表达式的例子。

fun main(args: Array) {
        val num1 = 10
        val num2 =20
        val result = if (num1 > num2) {
            "$num1 is greater than $num2"
        } else {
            "$num1 is smaller than $num2"
        }
        println(result)
}

输出:

10 is smaller than 20

我们可以通过仅在一条语句中编写if表达式来删除if-else主体的花括号。

例如:

fun main(args: Array) {
        val num1 = 10
        val num2 =20
        val result = if (num1 > num2) "$num1 is greater than $num2" else "$num1 is smaller than $num2"
        println(result)
}

在单行语句中使用if-else表达式就像Java中的三元运算符。 Kotlin不支持任何三元运算符。

Kotlin if-else if-else梯子表达式

让我们看一下if-else if-else梯形表达式的示例。

fun main(args: Array) {
    val num = 10
    val result = if (num > 0){
        "$num is positive"
    }else if(num < 0){
        "$num is negative"
    }else{
        "$num is zero"
    }
    println(result)
}

输出:

10 is positive

Kotlin如果表达式嵌套

让我们看一个嵌套if表达式的例子。

fun main(args: Array) {
    val num1 = 25
    val num2 = 20
    val num3 = 30
    val result = if (num1 > num2){

        val max = if(num1 > num3){
            num1
        }else{
            num3
        }
        "body of if "+max
    }else if(num2 > num3){
        "body of else if"+num2
    }else{
        "body of else "+num3
    }
    println("$result")
}

输出:

body of if 30