Kotlin if運算式

在Kotlin中,if運算式返回一個值。它用於控制程式結構的流程。 在Kotlin中有各種類型的if運算式。

  • if-else運算式
  • if-else if-else階梯運算式
  • 嵌套if運算式

傳統的if語句

傳統if語句的語法 -

if(condation){
    //code statement
}

傳統if else語句的語法 -

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運算式示例

fun main(args: Array<String>) {
        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-else主體的花括弧。

例如:

fun main(args: Array<String>) {
        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<String>) {
    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運算式

下麵來看看一個嵌套if運算式的例子。

fun main(args: Array<String>) {
    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

上一篇: Kotlin注釋 下一篇: Kotlin when運算式