Menu
Coddy logo textTech

`switch` sans expression

Fait partie de la section Fondamentaux du Journey GO de Coddy — leçon 41 sur 109.

En Go, nous pouvons utiliser une instruction switch sans expression après le mot-clé. C'est utile lorsque nous voulons évaluer plusieurs conditions de manière propre.

Créons un programme qui catégorise une personne en fonction de son âge :

age := 25
    
switch {
case age < 13:
    fmt.Println("Child")
case age < 20:
    fmt.Println("Teenager")
case age < 30:
    fmt.Println("Young Adult")
default:
    fmt.Println("Adult")
}

Après l'exécution de ce code, le programme vérifiera chaque condition de cas dans l'ordre. Comme notre âge est 25, il n'est pas inférieur à 13 ou 20, mais il est inférieur à 30, donc le troisième cas correspond. Le texte « Young Adult » s'affichera à l'écran :

Young Adult

Remarquez que sans expression après switch, chaque case devient une condition booléenne qui s'évalue soit à true soit à false. Le premier case qui s'évalue à true exécutera son bloc de code.

Si aucun des cas ne correspond, le cas default s'exécuterait. Dans notre exemple, si age était 35, la sortie serait « Adult ».

challenge icon

Défi

Facile

Dans ce défi, vous allez vous entraîner à utiliser une instruction switch sans expression. Ce type de switch est utile lorsque vous souhaitez évaluer plusieurs conditions sans répéter des instructions if-else.

Nous avons fourni une variable timeOfDay qui représente l'heure actuelle (au format 24 heures). Votre tâche consiste à compléter l'instruction switch sans expression pour afficher une salutation appropriée en fonction de l'heure de la journée.

Aide-mémoire

Une instruction switch sans expression vous permet d'évaluer plusieurs conditions de manière propre :

age := 25
    
switch {
case age < 13:
    fmt.Println("Child")
case age < 20:
    fmt.Println("Teenager")
case age < 30:
    fmt.Println("Young Adult")
default:
    fmt.Println("Adult")
}

Chaque cas devient une condition booléenne qui s'évalue à true ou false. Le premier cas qui s'évalue à true exécute son bloc de code. Si aucun cas ne correspond, le cas default s'exécute.

Essayez vous-même

package main

import "fmt"

func main() {
	// Cela représente l'heure actuelle au format 24 heures (0-23)
	timeOfDay := 14 // C'est 14h00
	
	// TODO: Compléter l'instruction switch sans expression
	// pour afficher la salutation appropriée en fonction de l'heure de la journée
	switch {
	// Ajoutez vos cas ici
	
	
	
	default:
		fmt.Println("Hello!")
	}
}
quiz iconTestez-vous

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