Switch
Contexte
Section intitulée « Contexte »En Go, switch est très flexible :
- Pas de rupture implicite (
breakautomatique entre les cas). - Les cas peuvent être des listes de valeurs.
- On peut utiliser un
switchsans expression (équivalent à une chaîneif-else). - Le
fallthroughpermet de passer au cas suivant (rare).
Déterminer le type de jour, ou utiliser un switch sans expression.
Code exemple
Section intitulée « Code exemple »package main
import ( "fmt" "time")
func main() { jour := time.Now().Weekday()
switch jour { case time.Saturday, time.Sunday: fmt.Println("C'est le weekend !") default: fmt.Println("C'est un jour de semaine.") }
// Switch sans expression x := 10 switch { case x > 0: fmt.Println("x est positif") case x < 0: fmt.Println("x est négatif") default: fmt.Println("x est nul") }
// fallthrough (peu recommandé) a := 2 switch a { case 1: fmt.Println("un") case 2: fmt.Println("deux") fallthrough case 3: fmt.Println("trois (fallthrough)") }}Sortie (exemple selon jour)
Section intitulée « Sortie (exemple selon jour) »C'est un jour de semaine.x est positifdeuxtrois (fallthrough)