In questo articolo imparerai a usare l'espressione if in Kotlin con l'aiuto di esempi.
Uso tradizionale di if … else
La sintassi di if … else è:
if (testExpression) (// codici da eseguire se testExpression è true) else (// codici da eseguire se testExpression è falso)
if
esegue una determinata sezione di codice se viene valutato testExpression true
. Può avere una clausola else opzionale. I codici all'interno della else
clausola vengono eseguiti se testExpression
è falso.
Esempio: uso tradizionale di if … else
fun main(args: Array) ( val number = -10 if (number> 0) ( print("Positive number") ) else ( print("Negative number") ) )
Quando esegui il programma, l'output sarà:
Numero negativo
Kotlin se espressione
A differenza di Java (e di altri molti linguaggi di programmazione), if
può essere utilizzata un'espressione in Kotlin; restituisce un valore. Letture consigliate: espressione di Kotlin
Ecco un esempio:
Esempio: Kotin if expression
fun main(args: Array) ( val number = -10 val result = if (number> 0) ( "Positive number" ) else ( "Negative number" ) println(result) )
Quando esegui il programma, l'output sarà:
Numero negativo
Il else
ramo è obbligatorio quando si utilizza if
come espressione.
Le parentesi graffe sono facoltative se il corpo di if
ha una sola istruzione. Per esempio,
fun main(args: Array) ( val number = -10 val result = if (number> 0) "Positive number" else "Negative number" println(result) )
Questo è simile all'operatore ternario in Java. Quindi, non esiste un operatore ternario in Kotlin.
Esempio: if block With Multiple Expressions
Se il blocco di if
ramo contiene più di un'espressione, l'ultima espressione viene restituita come valore del blocco.
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") )
Quando esegui il programma, l'output sarà:
-9 è maggiore di -11. La variabile max contiene il valore di a. max = -9
Letture consigliate: Kotlin when Statement
Kotlin se … altrimenti … se Ladder
Puoi restituire un blocco di codice tra molti blocchi in Kotlin usando if… else… if
ladder.
Esempio: if … else … if Ladder
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") )
Questo programma controlla se il numero è un numero positivo, un numero negativo o zero.
Kotlin annidato if Expression
Un'espressione if può trovarsi all'interno del blocco di un'altra espressione if nota come espressione if annidata.
Esempio: Espressione if annidata
Questo programma calcola il numero più grande tra tre numeri.
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") )
Quando esegui il programma, l'output sarà:
max = 5