原文: https://beginnersbook.com/2018/09/kotlin-if-else-expression/
在任何编程语言中,我们需要控制语句来根据条件的输出来控制程序的流程。例如,如果数字是偶数则显示“偶数”但如果数字是奇数则显示“奇数”。为了在编程中实现这一点,我们需要使用控制语句来检查条件是否满足,如果是,则执行此操作,如果没有则跳过此步骤。在 kotlin 中,我们使用表达式来控制程序中的流。在本教程中,我们将学习 Kotlin 中使用的几种表达式。
if表达式if..else表达式if..else if..else表达式- 嵌套表达式
1. Kotlin - if表达
if表达很容易理解。让我们来看看if表达式的语法:
if(condition){// Statements that need to be executed if condition is true...}
这里我们在if表达式中有一个条件,如果条件返回true则执行if表达式体内的语句,如果条件返回false则完全忽略它们。让我们举个例子来理解这个:
if表达式的例子
在这个例子中,如果给定的数字是偶数,那么我们在输出中显示“偶数”,否则我们跳过if里面的语句。
fun main(args: Array<String>) {val number = 100// if expressionif (number%2 == 0)println("Even Number")println("Out Of If statement")}
输出:
Even NumberOut Of If statement
让我们改变变量num的值。
fun main(args: Array<String>) {val number = 101if (number%2 == 0)println("Even Number")println("Out Of If statement")}
输出:
Out Of If statement
2. Kotlin - If..Else表达式
如果条件为true时,我们需要执行某些操作,并且条件为false时我们需要执行不同的操作,使用if else表达式。例如:如果我通过考试,我父亲会给我钱,否则他们会生气。如果我必须在编程中写这个,那么我会这样做:
fun main(args: Array<String>) {// Marks out of 100val marks = 90if (marks < 30) {println("Father will get angry")}else {println("Father will give me money")}}
输出:
Father will give me money
由于条件返回false,因此跳过if中的语句并执行else中的语句。
if..else表达式的语法:
if(condition){// Statements that will be executed if the condition returns true...}else{// Statements that will be executed if the condition returns false...}
if..else表达式示例
在这个例子中,我们正在检查一个数字,看它是正面的还是负面的。
fun main(args: Array<String>) {// Traditional usageval num = -101if (num < 0) {println("Negative number")}else {println("Positive number")}println("Out of if else statement")}
输出:
Negative numberOut of if else statement
3. Kotlin - if..else if..else阶梯表达式
在这个表达式中,我们有一个if块,一个else块和一个或多个else if块。这用于检查多个条件。
if..else if..else表达式示例
在这个例子中,我们有一个数字,我们正在检查它是负数,单位数,两位数还是多位数。我们使用if..else if..else表达式检查这些多个条件。当条件都不返回true时,else块内的语句将被执行。
fun main(args: Array<String>) {val num = 99if(num<0)println("Number is Negative")else if (num>0 && num<10)println("Single digit number")else if (num>=10 && num <100)println("Double digit number")elseprintln("Number has 3 or more digits")}
输出:
Double digit number
4. Kotlin - 嵌套表达式
当一个表达式存在于另一个表达式主体内时,它被称为表达式的嵌套。例如,如果if表达式出现在另一个if中,那么它将被称为嵌套if表达式。
例如:
fun main(args: Array<String>) {val num = 101if(num<0)println("Negative Number")else {//Nested expressionif(num%2 == 0)println("Even Number")elseprintln("Odd Number")}}
输出:
Odd Number
