Le mot-clé `else if`
Fait partie de la section Fondamentaux du Journey GO de Coddy — leçon 36 sur 109.
Apprenons à utiliser le mot-clé else if en Go pour vérifier plusieurs conditions à la suite. C'est utile lorsque vous avez besoin de plus de deux résultats possibles dans votre programme.
Tout d'abord, créons un programme qui catégorise la température en fonction de différentes plages :
temp := 75
if temp < 50 {
fmt.Println("It's cold")
} else if temp < 80 {
fmt.Println("It's pleasant")
} else {
fmt.Println("It's hot")
}Après l'exécution de ce code, le programme affichera "It's pleasant" à l'écran. Voici pourquoi : le programme vérifie d'abord si temp (75) est inférieur à 50. Comme cela est faux, il passe à la condition suivante et vérifie si temp est inférieur à 80.
Puisque 75 est effectivement inférieur à 80, il exécute ce bloc de code et affiche "It's pleasant". Le bloc else final est ignoré car une condition a déjà été remplie.
Les conditions sont vérifiées dans l'ordre, de haut en bas, et seul le code de la première condition remplie est exécuté. Une fois qu'une condition est remplie, les conditions restantes ne sont pas vérifiées du tout.
Défi
FacileDans ce défi, vous allez vous entraîner à utiliser le mot-clé else if pour gérer plusieurs conditions.
Vous avez une variable weather qui contient une chaîne de caractères décrivant la météo actuelle. Votre tâche consiste à compléter le code pour afficher différents messages en fonction des conditions météorologiques :
- Si c'est "sunny", affichez "Wear sunscreen!"
- Si c'est "rainy", affichez "Bring an umbrella!"
- Si c'est "cold", affichez "Wear a jacket!"
- Pour toute autre condition météorologique, affichez "Check the forecast!"
Aide-mémoire
Utilisez else if pour vérifier plusieurs conditions à la suite :
temp := 75
if temp < 50 {
fmt.Println("It's cold")
} else if temp < 80 {
fmt.Println("It's pleasant")
} else {
fmt.Println("It's hot")
}Les conditions sont vérifiées de haut en bas, et seule la première condition correspondante est exécutée. Une fois qu'une condition est remplie, les conditions restantes sont ignorées.
Essayez vous-même
package main
import "fmt"
func main() {
// Cette variable contient l'état météorologique actuel
weather := "rainy"
// TODO : Complétez l'instruction if-else if-else pour afficher le message approprié
if weather == "sunny" {
fmt.Println("Wear sunscreen!")
}
// Ajoutez votre code ici
}Cette leçon comprend un petit quiz. Commencez la leçon pour y répondre et suivre votre progression.
Toutes les leçons de Fondamentaux
4Opérateurs de comparaison et logiques
Opérateurs de comparaison - Partie 1Opérateurs de comparaison - Partie 2Opérateur logique ANDOpérateur logique OROpérateur logique NOTBases de la priorité des opérateursRécapitulatif - Effectuer des comparaisons7Structures de contrôle : Les boucles
Explication de la boucle `for`Boucle For - Les basesBoucle For - Condition uniquementLe mot-clé `break`Le mot-clé `continue`Boucles imbriquéesRécapitulatif - Répéter des actions2Variables et types de données de base
Qu'est-ce qu'une variableInférence de type avec `:=` Entiers (int)Nombres à virgule flottanteBooléensChaînes de caractères (Strings)Valeurs zéroConstantesConventions de nommageRécapitulatif - Variables et types5Entrées/Sorties de base
Sortie formatéeVerbes de formatageAffichage des typesSaisie utilisateur de baseRécapitulatif - Entrées et Sorties8Fonctions
Comprendre les fonctionsDéclarer une fonctionAppeler des fonctionsParamètres de fonctionRetourner une valeur uniqueRetourner plusieurs valeursValeurs de retour nomméesBases de la portée des fonctionsRécapitulatif - Créer du code réutilisable11Types composites : Slices
Introduction aux SlicesDéclaration de littéraux de SlicesCréation de Slices avec `make`Longueur vs Capacité des SlicesAccès aux éléments d'un SliceAjout d'élémentsDécoupage de Slices/Tableaux existantsItération sur les SlicesCopie de SlicesRécapitulatif - Listes dynamiques3Opérateurs de base
Opérateurs arithmétiquesOpérateur de divisionL'opérateur moduloOpérateur d'affectationOpérateurs d'affectation augmentéeIncrémentation et décrémentationRécapitulatif - Calculs6Structure de contrôle : Les conditionnelles
L'instruction `if`Le mot-clé `else`Le mot-clé `else if`Masquage de variable dans `if`Initialisation des variablesL'instruction `switch``switch` avec expressions`switch` sans expressionLe mot-clé `fallthrough`Récapitulatif - Prendre des décisions9Pointeurs
Qu'est-ce qu'un pointeur ?Déclaration de variables pointeursL'opérateur d'adresseDéréférencement de pointeursUtiliser des pointeurs dans les fonctionsPointeurs NilRécapitulatif - Comprendre les pointeurs12Types composites : Maps
Introduction aux MapsDéclaration de littéraux de MapCréation de Maps avec `make`Ajout et mise à jour de paires clé-valeurAccès aux valeurs d'une MapVérification de l'existence d'une cléSuppression d'entrées de MapTaille d'une MapItération sur les MapsRécapitulatif - Stockage clé-valeur