Les Conditionnels en Kotlin

Introduction aux Conditionnels

En Kotlin, les conditionnels sont des structures de contrôle qui permettent de prendre des décisions dans le code. Grâce à ces structures, un programme peut exécuter divers blocs de code selon des conditions spécifiques. Cela permet au comportement du code de varier en fonction de la situation rencontrée.

L'Instruction If

L'instruction if est utilisée pour exécuter un bloc de code seulement si une condition est remplie.

Exemple de la syntaxe :

if(condition){
    // Bloc de code
}

Prenons un exemple avec un robot, appelé Qbot, qui peut aller au cinéma s'il a terminé ses devoirs :

fun main() {
    val finishedHomework = true
    if (finishedHomework) {
        print("Peut aller voir un film")
    }
}

Le résultat de ce code sera :

Peut aller voir un film

L'Instruction Else

Le bloc else est utilisé pour définir des actions alternatives lorsque la condition de l'instruction if n'est pas satisfaite.

Exemple :

if(condition){
    // Bloc de code si true
} else {
    // Bloc de code si false
}

Dans cet exemple, si finishedHomework est défini sur false, le code exécuté sera celui du bloc else :

fun main() {
    val finishedHomework = false
    if (finishedHomework) {
        print("Peut aller voir un film")
    } else {
        print("Ne peut pas sortir pour voir un film")
    }
}

Le résultat sera :

Ne peut pas sortir pour voir un film

Les Instructions If-Else If

En utilisant plusieurs instructions if et else, on crée une structure de contrôle appelée if-else if. Ce mécanisme teste les conditions successivement jusqu'à ce qu'il en trouve une vraie. Si aucune condition n'est remplie, le bloc else est exécuté.

Exemple de syntaxe :

if (condition1) {
    // Code si condition1 est vraie
} else if (condition2) {
    // Code si condition1 est fausse et condition2 est vraie
} else {
    // Code si toutes les conditions sont fausses
}

Dans l'exemple suivant, en fonction de la probabilité de pluie, nous déterminons le message à afficher :

fun main() {
    println("Va-t-il pleuvoir ?")
    val probability = 70
    if (probability <= 40) {
        println("Peu probable")
    } else if (probability <= 80) {
        println("Probable")
    } else if (probability < 100) {
        println("Oui")
    } else {
        println("Quoi ?")
    }
}

Le résultat sera :

Va-t-il pleuvoir ?
Probable

L'Instruction When

L'instruction when est une alternative qui permet de gérer plusieurs conditions. Chaque branche de when implique une condition à vérifier et un bloc de code à exécuter pour la première condition vraie. Sa syntaxe est souvent plus claire pour plusieurs conditions.

Exemple de syntaxe :

when (expression) {
    valeur1 -> {
        // Code si expression == valeur1
    }
    valeur2 -> {
        // Code si expression == valeur2
    }
    ...
    else -> {
        // Code si aucune des valeurs ci-dessus ne correspond
    }
}

Voici comment utiliser l'instruction when dans notre exemple précédent :

fun main() {
    println("Va-t-il pleuvoir ?")
    val probability = 70
    when {
        probability <= 40 -> {
            println("Peu probable")
        }
        probability <= 80 -> {
            println("Probable")
        }
        probability < 100 -> {
            println("Oui")
        }
        else -> {
            println("Quoi ?")
        }
    }
}

Le résultat sera :

Va-t-il pleuvoir ?
Probable