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表达式

关注微信小程序
程序员编程王-随时随地学编程

扫描二维码
程序员编程王

扫一扫关注最新编程教程