Switch
đïž Les instructions switch en Java
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
â ïž Le break est important !
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đ§ Le bloc default
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");
}đ CompatibilitĂ© du switch
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
switchest pratique pour tester des cas précis.- Utilise
breakpour éviter les exécutions non désirées. - Le bloc
defaultest optionnel mais utile. - Compatible avec
int,char,String,enum, etc. - Plus lisible que plusieurs
else ifquand 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
}
}Sortie attendue (si jour = 2)
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
}
}Sortie attendue (si choix = "thé")
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
}
}Sortie attendue (si note = 'B')
TrĂšs bien