English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Expression if en Kotlin

Dans cet article, vous allez apprendre à utiliser l'expression if en Kotlin à l'aide d'exemples.

L'utilisation traditionnelle de if ... else

La syntaxe de if ... else est :

if (testExpression) {}}
   //Si testExpression est true, exécutez le code
}
else {
  //Si testExpression est false, exécutez le code
}

Si le résultat du calcul de testExpression est true, l'if exécute la partie de code spécifique. Il peut y avoir une clause else optionnelle. Si testExpression est false, le code de la clause else est exécuté.

Exemple : utilisation traditionnelle de if ... else

fun main(args: Array<String>) {
    val number = -10
    if (number > 0) {
        print("Nombre positif")
    } sinon {
        print("Nombre négatif")
    }
}

La sortie lors de l'exécution du programme est la suivante :

Nombre négatif

Expression if en Kotlin

Contrairement à Java (et à de nombreux autres langages de programmation), l'if peut être utilisé en expression en Kotlin ; il retourne une valeur.Lecture recommandée : Expression en Kotlin

Voici un exemple :

Exemple : expression if en Kotlin

fun main(args: Array<String>) {
    val number = -10
    val result = if (number > 0) {
        "Nombre positif"
    } sinon {
        "Nombre négatif"
    }
    println(result)
}

La sortie lors de l'exécution du programme est la suivante :

Nombre négatif

Lorsque l'if est utilisé en tant qu'expression, la branche else est obligatoire.

Si le corps principal de l'if ne contient qu'une seule instruction, les accolades sont optionnelles. Par exemple,

fun main(args: Array<String>) {
    val number = -10
    val result = if (number > 0) "Nombre positif" else "Nombre négatif"
    println(result)
}

Cela ressemble àOpérateur ternaire en JavaPar conséquent, il n'y a pas d'opérateur ternaire en Kotlin.

Exemple : le bloc if contient plusieurs expressions

Si le bloc de branche if contient plusieurs expressions, la dernière expression est retournée comme la valeur du bloc.

fun main(args: Array<String>) {
    val a = -9
    val b = -11
    val max = if (a > b) {
        println("$a est supérieur à $b.")
        println("La variable max conserve la valeur de a.")
        a
    } sinon {
        println("$b est supérieur à $a.")
        println("La variable max conserve la valeur de b.")
        b
    }
    println("max = $max")
}

La sortie lors de l'exécution du programme est la suivante :

-9 Supérieur à -11.
La variable max conserve la valeur de a.
max = -9

Échelle if..else..if en Kotlin

Vous pouvez utiliser l'échelle if..else...if dans de nombreux blocs en Kotlin pour retourner un bloc de code.

Par exemple : if ... else ... if en échelle

fun main(args: Array<String>) {
    val number = 0
    val result = if (number > 0)
        "Nombre positif"
    else if (number < 0)
        "Nombre négatif"
    sinon 
        "Zéro"
    
    println("Le nombre est $result")
}

Ce programme vérifie si le nombre est positif, négatif ou nul.

Expression if imbriquée en Kotlin

Une expression if peut être placée dans un bloc d'une autre expression if, ce qui est appelé expression if imbriquée.

Exemple : expression if imbriquée

Ce programme calcule le plus grand nombre parmi trois nombres.

fun main(args: Array<String>) {
    val n1 = 3
    val n2 = 5
    val n3 = -2
    val max = if (n1 > n2) {
        if (n1 > n3)
            n1
        sinon
            n3
    } sinon {
        if (n2 > n3)
            n2
        sinon
            n3
    }
    println("max = $max")
}

La sortie lors de l'exécution du programme est la suivante :

max = 5