Kotlin om ... annars uttryck (med exempel)

I den här artikeln lär du dig att använda if expression i Kotlin med hjälp av exempel.

Traditionell användning av om … annat

Syntaksen för if … else är:

 if (testExpression) (// codes to run if testExpression is true) else (// codes to run if testExpression is false)

ifkör en viss kodsektion om testExpression utvärderas till true. Det kan ha valfri annan klausul. Koder inuti elsesatsen körs om den testExpressionär falsk.

Exempel: traditionell användning av if … else

 fun main(args: Array) ( val number = -10 if (number> 0) ( print("Positive number") ) else ( print("Negative number") ) )

När du kör programmet blir resultatet:

 Negativt tal 

Kotlin om uttryck

Till skillnad från Java (och andra många programmeringsspråk) ifkan det användas ett uttryck i Kotlin; det returnerar ett värde. Rekommenderad läsning: Kotlinuttryck

Här är ett exempel:

Exempel: Kotin if expression

  fun main(args: Array) ( val number = -10 val result = if (number> 0) ( "Positive number" ) else ( "Negative number" ) println(result) )

När du kör programmet blir resultatet:

 Negativt tal 

Den elsegren är obligatoriskt vid användning ifsom ett uttryck.

De lockiga hängslen är valfria om kroppen ifendast har ett uttalande. Till exempel,

 fun main(args: Array) ( val number = -10 val result = if (number> 0) "Positive number" else "Negative number" println(result) )

Detta liknar den ternära operatören i Java. Därför finns det ingen ternär operatör i Kotlin.

Exempel: om block med flera uttryck

Om grenblocket ifinnehåller mer än ett uttryck returneras det sista uttrycket som värdet på blocket.

 fun main(args: Array) ( val a = -9 val b = -11 val max = if (a> b) ( println("$a is larger than $b.") println("max variable holds value of a.") a ) else ( println("$b is larger than $a.") println("max variable holds value of b.") b ) println("max = $max") ) 

När du kör programmet blir resultatet:

-9 är större än -11. max variabel innehar värdet på a. max = -9

Rekommenderad läsning: Kotlin när uttalande

Kotlin om … annars … om stege

Du kan returnera ett kodblock bland många block i Kotlin med hjälp av if… else… ifstege.

Exempel: om … annars … om stege

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

Detta program kontrollerar om talet är positivt tal, negativt tal eller noll.

Kotlin Nested if Expression

Ett if-uttryck kan finnas i blocket för ett annat om uttryck som kallas kapslat om uttryck.

Exempel: Kapslat om uttryck

Detta program beräknar det största antalet bland tre siffror.

 fun main(args: Array) ( val n1 = 3 val n2 = 5 val n3 = -2 val max = if (n1> n2) ( if (n1> n3) n1 else n3 ) else ( if (n2> n3) n2 else n3 ) println("max = $max") )

När du kör programmet blir resultatet:

 max = 5 

Intressanta artiklar...