Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
3090 connectés 

  FORUM HardWare.fr
  Programmation
  Java

  Switch(dir){

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Switch(dir){

n°721391
mbl
Posté le 11-05-2004 à 07:07:54  profilanswer
 

Bonjour tout le monde !
eclipse me met une erreur sur l'accolade apres un switch(dir),
je sais pas trop d'ou sa vient et sa m'embete vu que c'est la derniere erreur de mon projet:/
si quelqu'un avait la solution =) sa m'aiderai bien !
merci les gens  :bounce:  
www.mabulle.fr.st/PasCavalier.java


---------------
-3dB
mood
Publicité
Posté le 11-05-2004 à 07:07:54  profilanswer
 

n°721394
souk
Tourist
Posté le 11-05-2004 à 07:28:44  profilanswer
 

c'est normal, tu ne traite pas tous les cas possibles, rajoute une clause default dans ton switch. dans ce default tu peux lancer une exception comme quoi le parametre n'est pas valide, ou autre chose, mais tu dois etre exhaustif dans ce cas-ci sinon ta signature de methode n'est pas respectee.

n°721396
mbl
Posté le 11-05-2004 à 07:38:42  profilanswer
 

en clair ? jmets un  
case default :
   break;  
?
c'est ca ou alors jme plante totalement ?


---------------
-3dB
n°721414
souk
Tourist
Posté le 11-05-2004 à 08:54:54  profilanswer
 

non ca change rien ici.
 
le probleme c'est pas qu'il faille un default dans ta clause switch, le probleme c'est que tu declres ta fonction comme renvoyant un int, et si l'int passe au travers de ton filtrage, ben ta methode renvoie rien, donc le compilateur il est pas content, ce qui est normal.
en consequence, il faut renvoyer un int (apres ton switch ou dans une clause default a l'interieur du switch) ou alors tu lances une exception comme quoi le parametre est pas valide (par exemple)

n°721421
jagstang
Pa Capona ಠ_ಠ
Posté le 11-05-2004 à 09:06:37  profilanswer
 

essaie de mettre  
 

Code :
  1. Switch(dir)


 
switch en minuscule !

n°721534
pascal34
one point !
Posté le 11-05-2004 à 10:18:45  profilanswer
 

Petit conseil de codage : toutes les clauses de ton switch renvoient la même variable :

  • affecte une valeur par défaut à nb_cases dans la clause default du switch
  • fait un return global de nb_cases en fin de méthode.


ça t'évitera bien des problèmes en cas d'erreur.
 
De manière générale, il est bon de n'avoir qu'un point de retour d'une méthode.

n°721723
nraynaud
lol
Posté le 11-05-2004 à 12:16:20  profilanswer
 

mbl a écrit :

en clair ? jmets un  
case default :
   break;  
?
c'est ca ou alors jme plante totalement ?

hors sujet, mais c'est  

Code :
  1. switch(prout) {
  2. case BIDULE :
  3. default :
  4. }


---------------
trainoo.com, c'est fini
n°721741
the real m​oins moins
Posté le 11-05-2004 à 12:29:37  profilanswer
 

nraynaud a écrit :

hors sujet, mais c'est  

Code :
  1. switch(prout) {
  2. case BIDULE :
  3. default :
  4. }



sans oublier le break apres chaque case quand meme [:aloy]

n°721747
nraynaud
lol
Posté le 11-05-2004 à 12:39:00  profilanswer
 

the real moins moins a écrit :

sans oublier le break apres chaque case quand meme [:aloy]

me parle pas de cette merde, j'en ai oublié un l'autre fois.
 
maintenant, j'ai plutôt tendance à utiliser une hashMap qu'un switch tellement c'est la merde syntaxiquement et au debug. En plus ça fait des fonctions de 300 lignes.


---------------
trainoo.com, c'est fini
n°721749
the real m​oins moins
Posté le 11-05-2004 à 12:40:46  profilanswer
 

bah clair :o
(sinon moi je fous meme un block apres chaque case, je pige pas pq c'est pas la syntaxe par defaut. ça me permet d'isoler mes variables
 
sinon


switch(truc) {
 case 1:
   String s = "pouet";
   dostuffwith(s);
   break;
 case 2:
   String s = "blah";
   dostuffwith(s);
   break;
 
}

n'est pas valide parce que "s" est défini deux fois [:kiki]

mood
Publicité
Posté le 11-05-2004 à 12:40:46  profilanswer
 

n°721752
gfive
Posté le 11-05-2004 à 12:42:17  profilanswer
 

switch, cai le mal, comme dirait l'autre.

n°721755
nraynaud
lol
Posté le 11-05-2004 à 12:44:30  profilanswer
 

gfive a écrit :

switch, cai le mal, comme dirait l'autre.

oué, mais j'ai tendance à le garder pour les petits automates. ça fait des trucs indébuggables, mais assez compact.


---------------
trainoo.com, c'est fini
n°721757
gfive
Posté le 11-05-2004 à 12:46:54  profilanswer
 

Oui, ça se comprend...Y'a toujours des entorses à la philosophie objet qu'on peut considérer comme admissibles, et c'est bien normal, sinon, on se ferait souvent chier pour pas grand chose...

n°721763
nraynaud
lol
Posté le 11-05-2004 à 12:50:10  profilanswer
 

En fait, j'aimerais avoir un générateur d'automates en ligne, comme il y a un générateur d'expressions rationelles, mais ça existe pas.


---------------
trainoo.com, c'est fini
n°721765
benou
Posté le 11-05-2004 à 12:51:52  profilanswer
 

the real moins moins a écrit :

je pige pas pq c'est pas la syntaxe par defaut.


parce que ca vient du C, et que en C, à la compilation, ca se traduit quasi directement en assembleur et que dans le cas où tu mets pas de break ca évite un saut inutile.  [:benou]


---------------
ma vie, mon oeuvre - HomePlayer

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Java

  Switch(dir){

 

Sujets relatifs
Question sur la gestion des cas (case ... switch) en PHPFonction switch qui ne veut pas marcher ...
[PHP] switch avec 'case' multiples?[C] Comment faire un switch sur une chaine de caractère ?
a propos du switch "default"[SNMP] Retouver le switch correspondant à une adresse MAC, assez urgen
Rempalcer des if/else avec des String en Switch/case avec des entiers?problème avec un switch et les chaines de caractère !!
[PHP] pb switch... [RESOL][PHP] SWITCH , registers globall off, pb, notice [RESOL]
Plus de sujets relatifs à : Switch(dir){


Copyright © 1997-2025 Groupe LDLC (Signaler un contenu illicite / Données personnelles)