English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
In questo articolo, imparerai a utilizzare l'espressione if in Kotlin con esempi.
La sintassi di if ... else è:
if (testExpression) { //Se testExpression è true, esegui il codice } else { //Se testExpression è false, esegui il codice }
Se il risultato del calcolo di testExpression è true, esegue la parte di codice specifica dell'if. Può avere una clausola else opzionale. Se testExpression è false, esegue il codice nella clausola else.
fun main(args: Array<String>) { val number = -10 if (number > 0) { print("Numero positivo") } else { print("Numero negativo") } }
Quando si esegue questo programma, l'output è:
Numero negativo
Diversamente da Java (e da molti altri linguaggi di programmazione), in Kotlin l'if può essere utilizzato come espressione; restituisce un valore.Raccomandato per la lettura: Espressione in Kotlin
Questo è un esempio:
fun main(args: Array<String>) { val number = -10 val result = if (number > 0) { "Numero positivo" } else { "Numero negativo" } println(result) }
Quando si esegue questo programma, l'output è:
Numero negativo
Quando si utilizza if come espressione, la branca else è obbligatoria.
Se il corpo della branca if contiene solo una istruzione, i parentesi graffati sono opzionali. Ad esempio:
fun main(args: Array<String>) { val number = -10 val result = if (number > 0) "Numero positivo" else "Numero negativo" println(result) }
È simile aOperatore ternario in JavaQuindi, in Kotlin non esiste l'operatore ternario.
Se il blocco della branca if contiene più di una espressione, l'espressione finale viene restituita come valore del blocco.
fun main(args: Array<String>) { val a = -9 val b = -11 val max = if (a > b) { println("$a è maggiore di $b.") println("La variabile max conserva il valore di a.") a } else { println("$b è maggiore di $a.") println("La variabile max conserva il valore di b.") b } println("max = $max") }
Quando si esegue questo programma, l'output è:
-9 è maggiore di -11. La variabile max conserva il valore di a. max = -9
Puoi usare la scalinata if..else...if in molti blocchi di Kotlin per restituire un blocco di codice.
fun main(args: Array<String>) { val number = 0 val result = if (number > 0) "Numero positivo" else if (number < 0) "Numero negativo" altro "Zero" println("Il numero è \t$result") }
Il programma verifica se il numero è positivo, negativo o zero.
Un'espressione if può essere situata all'interno del blocco di un'altra espressione if, detta espressione if annidata.
Questo programma calcola il numero più grande tra tre numeri.
fun main(args: Array<String>) { val n1 = 3 val n2 = 5 val n3 = -2 val max = if (n1 > n2) { if (n1 > n3) n1 altro n3 } else { if (n2 > n3) n2 altro n3 } println("max = $max") }
Quando si esegue questo programma, l'output è:
max = 5