Switch - 420111aut25/cours420111 GitHub Wiki
switch
en Java
🎛️ Les instructions L’instruction switch
permet de tester la valeur d’une variable et d’exécuter différents blocs de code selon son contenu exact.
C’est une alternative plus claire aux chaînes de if...else if
quand on compare une même variable à plusieurs valeurs possibles.
🧰 Syntaxe de base
switch (variable) {
case valeur1:
// Code si variable == valeur1
break;
case valeur2:
// Code si variable == valeur2
break;
default:
// Code si aucune des valeurs ne correspond
}
🧱 Éléments clés :
Mot-clé | Rôle |
---|---|
case |
Spécifie une valeur à tester |
break |
Termine le switch , évite les "chutes" |
default |
(optionnel) Bloc exécuté par défaut |
📦 Exemple simple
int jour = 3;
switch (jour) {
case 1:
System.out.println("Lundi");
break;
case 2:
System.out.println("Mardi");
break;
case 3:
System.out.println("Mercredi");
break;
default:
System.out.println("Jour inconnu");
}
➡️ Affichera : Mercredi
break
est important !
⚠️ Le Sans le break
, le programme continue dans les cases suivantes, même si elles ne correspondent pas :
int x = 2;
switch (x) {
case 1:
System.out.println("Un");
case 2:
System.out.println("Deux");
case 3:
System.out.println("Trois");
}
➡️ Affichera :
Deux
Trois
default
🧠 Le bloc Le mot-clé default
permet de gérer les cas non prévus :
char lettre = 'z';
switch (lettre) {
case 'a':
System.out.println("Voyelle A");
break;
case 'e':
System.out.println("Voyelle E");
break;
default:
System.out.println("Autre lettre");
}
switch
🔁 Compatibilité du En Java, tu peux utiliser switch
avec les types suivants :
Type autorisé | Exemples |
---|---|
int , short , byte , char |
switch (entier) |
String (depuis Java 7) |
switch (nom) |
enum |
switch (couleur) |
❌ Pas compatible avec float
, double
, boolean
, ni avec des expressions complexes.
🔥 À retenir
switch
est pratique pour tester des cas précis.- Utilise
break
pour éviter les exécutions non désirées. - Le bloc
default
est optionnel mais utile. - Compatible avec
int
,char
,String
,enum
, etc. - Plus lisible que plusieurs
else if
quand on compare la même variable.
🔹 Exercice 1 : Jour de la semaine
Crée une variable int jour
, puis utilise une instruction switch
pour afficher le nom du jour correspondant :
1
→"Lundi"
2
→"Mardi"
3
→"Mercredi"
- Autre →
"Jour inconnu"
public class Exo1 {
public static void main(String[] args) {
// Déclaration du jour
// Switch selon le jour
}
}
jour = 2
)
Sortie attendue (si Mardi
🔹 Exercice 2 : Type de boisson
Crée une variable String choix
, qui peut valoir "café"
, "thé"
ou "jus"
.
Utilise switch
pour afficher :
"Vous avez choisi du café"
"Vous avez choisi du thé"
"Vous avez choisi du jus"
- Sinon :
"Boisson inconnue"
public class Exo2 {
public static void main(String[] args) {
// Déclaration de la boisson
// Switch sur le choix
}
}
choix = "thé"
)
Sortie attendue (si Vous avez choisi du thé
🔹 Exercice 3 : Note en lettre
Crée une variable char note
qui peut être 'A'
, 'B'
, 'C'
ou une autre lettre.
Utilise switch
pour afficher :
'A'
→"Excellent"
'B'
→"Très bien"
'C'
→"Bien"
- Autre →
"Note invalide"
public class Exo3 {
public static void main(String[] args) {
// Déclaration de la note
// Switch sur la note
}
}
note = 'B'
)
Sortie attendue (si Très bien