[Résolu] - [Java1] Switch ?

Voir le sujet précédent Voir le sujet suivant Aller en bas

[Résolu] - [Java1] Switch ?

Message  mfa le Ven 26 Oct 2007, 17:21

Bonjour,

J'avais une petite question concernant le "switch" ... Peut-on imbriquer deux switch?

Par exemple : euh ...

Code:

switch (marque){
  case 1 : 
        switch(modele){
            case 1 : System.out.print("106");
            case 2 : System.out.print("205");
            case 3 : System.out.print("206");
            case 4 : System.out.print("207");
            default : System.out.print("Erreur");
                          System.exit(1);
            }
  ...
}

 

Je ne sais pas du tout si ma question est posée clairement ou pas, donc j'attendrais les premières remarques pour la reformuler éventuellement.

Merci


Dernière édition par le Lun 29 Oct 2007, 22:59, édité 5 fois

mfa

Nombre de messages : 102
Age : 29
Date d'inscription : 22/04/2007

Revenir en haut Aller en bas

Re: [Résolu] - [Java1] Switch ?

Message  yoda le Ven 26 Oct 2007, 17:26

je reponds par une autre question ... pourquoi ne pourrais-t-on pas ?

yoda

Nombre de messages : 1119
Age : 33
Prénom : Antoine
Statut : Ancien
Localisation : Bruxelles
Date d'inscription : 17/12/2006

Revenir en haut Aller en bas

Re: [Résolu] - [Java1] Switch ?

Message  mfa le Ven 26 Oct 2007, 17:41

J'ai changé le petit bout de code car il m'avait l'air pas assez parlant ... Ce que je voudrais faire par exemple dans celui-ci c'est de sélectionner la marque du véhicule (le 1 désignerait peugeot par ex.) et ensuite lister les modèles disponible (ici seulement 4). Et de faire en sorte de quitter le programme si l'utilisateur choisit par ex. la marque peugeot et ensuite le 5 (qui ne correspond à rien ici).

Et pour répondre à ta question yoda ... Lors de l'exécution le programme m'affiche directement "Erreur" meme si j'ai choisi le choix n°2 ? ...

mfa

Nombre de messages : 102
Age : 29
Date d'inscription : 22/04/2007

Revenir en haut Aller en bas

Re: [Résolu] - [Java1] Switch ?

Message  pbt le Ven 26 Oct 2007, 17:53

Il n'y a pas de soucis, tu peux imbriquer plusieurs switch puisque après un "case ConstantExpression: " tu peux mettre une instruction (statement) ou un bloc.

S'il y a erreur elle vient d'ailleurs. Tu peux poster un bout de code, et les messages d'erreurs générés, il est possible que l'on réponde ;-)

_________________
smartq.namok.be · faq ·  · IRC / irc.freenode.net #esi · blog.namok.be
style #pbt {heigth:189cm; weight:79kg; eye-color:#524000; hair:very short; dead pixels: some; }

pbt
Admin

Nombre de messages : 4862
Age : 45
Prénom : Pierre
Statut : prof
Localisation : La cité des géants
Date d'inscription : 24/11/2005

http://esi.namok.be

Revenir en haut Aller en bas

Re: [Résolu] - [Java1] Switch ?

Message  Invité le Ven 26 Oct 2007, 18:18

Hé sympa ca, j'y ai jamais pensé.
Enfin j'en ai jms eu besoin non plus...

Invité
Invité


Revenir en haut Aller en bas

Re: [Résolu] - [Java1] Switch ?

Message  El_Turco le Sam 27 Oct 2007, 00:06

N'oublie pas de mettre les break

El_Turco

Nombre de messages : 896
Age : 30
Prénom : Adem
Statut : Ancien Industriel
Localisation : Bruxelles, Schaerbeek
Date d'inscription : 16/01/2007

Revenir en haut Aller en bas

Re: [Résolu] - [Java1] Switch ?

Message  mfa le Sam 27 Oct 2007, 00:49

Merci à tous ;-). C'était un problème de "break" en effet ...

Je ne les ai pas oublier mais je les ai plutôt mal placer !

Merci pour votre aide.

mfa

Nombre de messages : 102
Age : 29
Date d'inscription : 22/04/2007

Revenir en haut Aller en bas

Re: [Résolu] - [Java1] Switch ?

Message  mfa le Dim 28 Oct 2007, 19:19

Re,

Au lieu de poser un nouveau sujet j'ai préféré continuer celui-ci surtout que ca touche également au "switch" dans un programme Java ...

Ma question est : comment pourrait-on faire pour attribuer un bloc d'instructions à "une chaîne de caractère" au lieu d'un chiffre ?

Un exemple pour illustrer ma question :
Code:

switch(marque)
{
      case 1 : System.out.print("PEUGEOT");
      case 2 : System.out.print("MAZDA");
      case 3 : System.out.print("TOYOTA");
      ...
}

Ici par exemple, le 1 nous afficherait PEUGEOT, le 2, MAZDA, etc. Et au lieu de ca j'aimerais qu'en fonction que l'utilisateur écrive la chaîne de caractère PEUGEOT, que le bout de code écrive PEUGEOT (ceci est un simple exemple et non pas ce que je souhaite faire, pas d'utilité de lui réécrire ce qu'il vient d'écrire lol ;-)).

Merci à tous,

mfa

Nombre de messages : 102
Age : 29
Date d'inscription : 22/04/2007

Revenir en haut Aller en bas

Re: [Résolu] - [Java1] Switch ?

Message  nvs le Dim 28 Oct 2007, 20:34

mfa a écrit:Ma question est : comment pourrait-on faire pour attribuer un bloc d'instructions à "une chaîne de caractère" au lieu d'un chiffre ?
en remplaçant
Code:
switch
par
Code:
if ... else ...
comme dans :
Code:
if ( marque.equals("quiPollue") ) {
...// bloc 1
}
else if ( marque.equals("quiSentMauvais") )  {
...// bloc 2
}
else if ( marque.equals("quiEnlaiditLePaysage") ) {
...// bloc 3
}
else {
... // c'est le bloc default de switch
}

note que par rapport à ton code, je suppose que des
Code:
break
apparaissent en fin de chaque bloc
Code:
case
sinon, il faut juste un peu adapter le code ci-dessus Smile

nvs

Nombre de messages : 5238
Age : 44
Prénom : Nicolas
Statut : prof
Localisation : bxl
Date d'inscription : 24/11/2005

http://nvansteenkiste.googlepages.com

Revenir en haut Aller en bas

Re: [Résolu] - [Java1] Switch ?

Message  yoda le Dim 28 Oct 2007, 21:37

mfa a écrit:Et pour répondre à ta question yoda ... Lors de l'exécution le programme m'affiche directement "Erreur" meme si j'ai choisi le choix n°2 ? ...
ma question était plutôt sur un ordre "philosophique" du comment du pourquoi ne pourrait-on pas placer un switch dans un switch ... pas sur la conséquence, si terre a terre, de l'"erreur" qui vient foutre un peux le boxon ...

bref, pour t'amener a réfléchir sur qu'est-ce qui pourrait bien t'interdire de faire ca ...

yoda

Nombre de messages : 1119
Age : 33
Prénom : Antoine
Statut : Ancien
Localisation : Bruxelles
Date d'inscription : 17/12/2006

Revenir en haut Aller en bas

Re: [Résolu] - [Java1] Switch ?

Message  mfa le Lun 29 Oct 2007, 22:59

merci monsieur nvs

mfa

Nombre de messages : 102
Age : 29
Date d'inscription : 22/04/2007

Revenir en haut Aller en bas

Re: [Résolu] - [Java1] Switch ?

Message  Contenu sponsorisé Aujourd'hui à 08:43


Contenu sponsorisé


Revenir en haut Aller en bas

Voir le sujet précédent Voir le sujet suivant Revenir en haut


 
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum