Switch case Vs Else if

omcougar Messages postés 152 Date d'inscription mardi 4 mai 2004 Statut Membre Dernière intervention 8 octobre 2008 - 9 avril 2008 à 08:48
coucou747 Messages postés 12303 Date d'inscription mardi 10 février 2004 Statut Membre Dernière intervention 30 juillet 2012 - 9 avril 2008 à 13:01
Bonjour,

Une question purement d'optimisation:

Etant donné que l'on peut faire la meme chose avec la fonction "switch/case" ou des "if / elsif" je pense qu'il doit y avoir une question d'optimisation....

le "switch/case" est plus rapide ???

Merci

2 réponses

cs_DARKSIDIOUS Messages postés 15814 Date d'inscription jeudi 8 août 2002 Statut Membre Dernière intervention 4 mars 2013 130
9 avril 2008 à 12:41
Salut,

Tout à fait, le switch est plus rapide au délà de 3-4 cases, et surtout, rend le code plus lisible !
______________________________________
DarK Sidious
0
coucou747 Messages postés 12303 Date d'inscription mardi 10 février 2004 Statut Membre Dernière intervention 30 juillet 2012 44
9 avril 2008 à 13:01
en fait ca depend...

avec un if, on peut appliquer un principe de dichotomie :

je prends un exemple simple avec une variable x entre 0 et 9

if (x<5){
// cas x=1 ou 0 ou 2 ou 3 ou 4
if (x<2){
//cas x=1 ou 0
if (x==0){
//cas x=0
}else{
//cas x=1
}
//cas x=1 ou 0

}else{
//cas x=2, 3 ou 4
if (x==2){
//cas x=2
}else if (x==3){
//cas x=3
}else{
//cas x=4
}
//cas x=2, 3 ou 4

}

}else{
 // cas x=5, 6, 7, 8 ou 9 je ne detaille pas plus...
}

avec un code du genre, on effectue moins de comparaisons qu'un simple switch, mais c'est moins lisible, et c'est pas toujours faisable
/**
* @author coucou747 <coucou747@hotmail.com>
* @see irc://cominweb.uni-irc.net/#programmation
*/
0
Rejoignez-nous