INTERNET ...Construction de Pages WEB.
L'instruction switch n°
15
L'instruction de contrôle switch
Si l'instruction de test if…else convient très bien pour les situations définies
uniquement par 2 conditions , elle n'est
pas adaptée aux conditions multiples..En revanche l'instruction switch est faite pour
ça .!
Exemple :
switch ( toto )
{
case 10 : System.out.println(" cas 10 "); break;
case 25 : System.out.println(" cas 25 "); break;
case 78 : System.out.println(" cas 78 "); break;
default : System.out.println(" toto atteint une valeur en dehors des 3 cas ..! ");
}
Explications :
Si toto prend la valeur 10 alors les instructions placées
derrière les 2 points sont exécutées. L'instruction break
fait 'sauter' tous les autres cas et quitter la structure switch.
Idem pour les 2 autres cases.
Le cas default est optionnel et permet de traiter tous les autres cas
.
Switch s'applique uniquement aux types de données primitifs ( byte, char, short, int ).
Autre exemple :
switch (carac) // attention..pas de point-virgule !
{
case '+' : Z=x+y; break;
case '-' : Z=x-y; break;
case '*' : Z=x*y; break;
case '/' : Z=x/y; break;
default : System.out.println(" mauvaise touche..! ");
}
Il est possible d'exploiter de manière intelligente l'instruction break.
Par exemple :
switch (valor) // si valor prend les cas 1 ou 3 ou 5 ou 7 la structure saute
au cas 9 directement…
{
case 1 :
case 3 :
case 5 :
case 7 :
case 9 : System.out.println(" Valor est IMPAIRE "); break;
default : System.out.println(" Valor est PAIRE ");
}
Remarque : pour utiliser des tests de contrôle sur les chaines
de caractères vous devrez utiliser des Tests if..else car
switch ne gère que les types primitifs.