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

  FORUM HardWare.fr
  Programmation
  Java

  Exception + switch

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Exception + switch

n°1799511
muchachos1​4
Posté le 13-10-2008 à 16:30:38  profilanswer
 

Bonjour à tous!!!
Je n'arrive pas à inserer une exception dans mon switch au niveau de mon default pour que mon prog ne plante pas lorsqu'on saisi autre chose qu'un int...Quelqu'un pourrait il m'aider s'il vous plait?
 

Code :
  1. switch(sc.nextInt()){
  2.     case 1 :sMoyen = "toto";
  3.     tmp = true;
  4.     break;
  5.     case 2 :sMoyen = "tutu";
  6.     tmp = true;
  7.     break;
  8.     default : System.out.println("Mauvaise saisi" );
  9.     break;


Merci d'avance

mood
Publicité
Posté le 13-10-2008 à 16:30:38  profilanswer
 

n°1799656
brisssou
8-/
Posté le 13-10-2008 à 18:48:42  profilanswer
 

de quoi :??:

 

sc ? c'est quoi donc ? en même temps, nextInt, ça devrait donner un entier, non ?

 

sinon, si tu veux lever une exception dans ton default, le mot clef que tu cherches, c'est throw.


Message édité par brisssou le 13-10-2008 à 18:50:16

---------------
HFR - Mes sujets pour Chrome - Firefox - vérifie les nouveaux posts des topics suivis/favoris
n°1799969
Mulioak
Posté le 14-10-2008 à 14:01:38  profilanswer
 

sc vient certainement de Scanner.  
 
Le souci dans ton code muchachos14, c'est que l'exception est levée avant de rentrer dans le switch.
Quand ça passe sur ton nextInt(), ça renvoie direct l'exception sans aller voir ce qu'il y a plus loin.  

n°1800110
Bidem
Posté le 14-10-2008 à 17:23:32  profilanswer
 

Citation :

Je n'arrive pas à inserer une exception dans mon switch au niveau de mon default pour que mon prog ne plante pas lorsqu'on saisi autre chose qu'un int


 
Tu veux lever une exception ou en catcher une ?
 
Car si c'est comme Mulioak dit, il faut faire ça :

Code :
  1. int saisie;
  2. try {
  3.   saisie = sc.nextInt();
  4. } catch (XxxException e) {
  5.   saisie = -1; // ou toute autre valeur qui t'envera dans default
  6. }
  7. switch(saisie) {
  8.     case 1 :sMoyen = "toto";
  9.     tmp = true;
  10.     break;
  11.     case 2 :sMoyen = "tutu";
  12.     tmp = true;
  13.     break;
  14.     default : System.out.println("Mauvaise saisi" );
  15.     break;

n°1802124
shakhal
Posté le 19-10-2008 à 18:07:10  profilanswer
 


Ce serait peut-être un peu plus joli comme ça (mais les goûts et les couleurs...)

Code :
  1. int saisie;
  2. try {
  3.   saisie = sc.nextInt();
  4.   tmp = true;
  5.   switch(saisie) {
  6.     case 1 :sMoyen = "toto";
  7.     break;
  8.     case 2 :sMoyen = "tutu";
  9.     break;
  10.   }
  11. } catch (XxxException e) {
  12.   System.out.println("Mauvaise saisi" );
  13.   Log(e.printStackTrace());
  14. }


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

  Exception + switch

 

Sujets relatifs
[javascript] switch avec des stringsLicence GPL avec exception ?
Exception PL/SQL[ORACLE - TRIGGER]exception TABLE IS MUTATING
un Switch réparti sur plusieurs fichiers ?[C#] exception NullReferenceExc lors de changement d'image de fond
Exception dans un constructeur puis traitement dans une autre classehibernate grammar exception (renommé avec mon 3e post)
Tomcat exceptionException provoqués par ApplicationRessources
Plus de sujets relatifs à : Exception + switch


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR