Bug dans un menu: exception mal attrapée
Bonjour,
j'ai un souci avec un menu. Je vous mets le code ici:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41
| class Main {
public static void main(String [] args)
{
int reponse = -1;
while (reponse != 3)
{
Terminal.sautDeLigne();
Terminal.ecrireStringln("1:choix 1");
Terminal.ecrireStringln("2:choix 2");
Terminal.ecrireStringln("3:fin");
Terminal.sautDeLigne();
try
{
reponse = Terminal.lireInt();
if (reponse < 1 || reponse > 3) throw new ArrayIndexOutOfBoundsException();
} catch (ArrayIndexOutOfBoundsException e)
{
Terminal.ecrireStringln("Mauvaise saisie.");
} catch (Exception e2)
{
Terminal.ecrireStringln("Mauvaise saisie.");
}
switch (reponse)
{
case 1: {
Terminal.ecrireStringln("Veuillez saisir votre texte.");
String phraseLue = Terminal.lireString();
AjoutTexte(phraseLue);
break;
}
case 2: { .............
break;
}
case 3: {
Terminal.ecrireStringln("A bientôt");
break;
}
}
}
}
} |
Alors, j'obtiens mon chouette menu:
1: choix 1
2: choix 2
3: fin
Je fais exprès de taper une lettre et j'obtiens:
Mauvaise saisie.
Puis je reviens au menu.
Je tape alors 5 et le même phénomène se reproduit.
Je joue le jeu et tape 1. Je saisis mon texte, puis je suis renvoyé au menu. Là, je tape une lettre, et j'obtiens:
Mauvaise saisie.
Veuillez saisir votre texte.
Vous l'avez compris, je suis rentré à nouveau dans le menu avec le choix 1, alors que cela n'aurait pas dû se produire.
Auriez-vous une idée?
J'ai essayé de mettre default mais ça ne fonctionne pas.
Merci d'avance!
Johnny3