Aller au contenu principal
Publié le

Switch en Go

Partager :

Introduction

Le switch est un outil puissant en Go qui permet aux programmeurs de prendre des décisions basées sur plusieurs cas. Contrairement aux conditionnelles avec if et else, le switch est souvent plus lisible, surtout lorsqu'on gère de nombreuses conditions.

Fondamentaux du Switch

  1. Vérification d'Égalité : Le switch compare l'expression donnée avec les valeurs de chaque case.
  2. Exécution Unique : Contrairement à d'autres langages, en Go, une fois qu'un case correspond, le programme quitte le bloc switch. Pas besoin d'un "break" explicite.
  3. Clause Default : Si aucun case ne correspond, le code sous default sera exécuté. Cependant, default est optionnel.

Switch Basique

jour := "jeudi"

switch jour {
case "lundi":
	fmt.Println("Aujourd'hui c'est lundi.")
case "mardi":
	fmt.Println("Aujourd'hui c'est mardi.")
default:
	fmt.Println("Ce n'est ni lundi ni mardi.")
}

Switch avec Plusieurs Conditions dans un Case

Il est possible de combiner plusieurs valeurs possibles dans un seul case :

lettre := 'B'

switch lettre {
case 'A', 'E', 'I', 'O', 'U':
	fmt.Println("Voyelle")
default:
	fmt.Println("Consonne")
}

Switch avec Initialiseur

Tout comme l'instruction if, le switch peut aussi avoir une initialisation :

switch num := 5; num {
case 1, 3, 5, 7, 9:
	fmt.Println("Nombre impair")
default:
	fmt.Println("Nombre pair")
}

Switch de Type

Go prend également en charge un switch basé sur le type, utile lorsqu'on travaille avec des interfaces :

var x interface{} = "texte"

switch x.(type) {
case int:
	fmt.Println("x est un entier")
case string:
	fmt.Println("x est une chaîne")
default:
	fmt.Println("Type inconnu")
}

Conclusion

L'instruction switch en Go offre une façon propre et efficace de gérer plusieurs conditions. Qu'il s'agisse de vérifier des valeurs ou des types, le switch rend le code plus organisé et lisible.

Happy coding!