L'instruction switch permet d'exécuter des instructions différentes selon la valeur que prend une variable. Elle a la forme générale suivante :
switch (var) { case val1 : instructions; case val2 : instructions; default : instructions; }
La variable testée doit être de type entier ou de type caractère. Les valeurs val1, val2, ... doivent être des constantes. La clause default permet de donner des instructions à exécuter si la variable a une valeur différente de celles qui sont prévues. Attention : dès qu'un cas correspond à la valeur de la variable, toutes les instructions qui suivent sont exécutées; on utilise le mot-clé BREAK pour sortir de la boucle.
Ecrivons un programme qui donne une appréciation pour une note sur 10 obtenue à un devoir : "Très insuffisant" de 0 à 2, "Insuffisant" de 3 à 4, "Moyen" de 5 à 6, "Bien" de 7 à 8 et "Très bien" de 9 à 10.
Si la note est contenue dans la variable note, on peut utiliser le code suivant :
switch (note) { case 0: case 1: case 2: System.out.println("Très insuffisant."); break; case 3: case 4: System.out.println("Insuffisant."); break; case 5: case 6: System.out.println("Moyen."); break; case 7: case 8: System.out.println("Bien."); break; case 9: case 10: System.out.println("Très bien."); break; default : System.out.println("Note impossible."); }
Le mot-clé break permet d'éviter l'exécution des instructions correspondant aux cas suivant le cas traité.
Ecrire le programme complet qui lit la note passée en paramètre et affiche l'appréciation.