Unendlich Wiederholungsfehler bei try catch - Block

C-dric

Mitglied
Java:
boolean fehler;
do {
  try {
    fehler = false;
    g = sc.nextDouble();
  } catch (InputMismatchException e) {
    System.out.println("Du darfst nur Zahlen eingeben!");
    fehler = true;
} while(fehler);

Bei mir wird bei einer falsch-eingabe immer automatisch zu catch gesprungen
 
Zuletzt bearbeitet von einem Moderator:
das liegt daran, dass du nur nextDouble aufrufst, dieses aber den NewLine character nicht entfernt.
Zwei mögliche Lösungen:
1. Im catch einmal nextLine() machen, wodurch der NewLine character gelesen wird
2. Anstatt nextDouble: Double.parseDouble(sc.nextLine());
 

Zurück
Oben