Frage von fabi0821, 42

Java - Gebe Message wenn statt zahl ein Buchstabe eingegeben wird?

Hallo,

wie mache ich das mir java einen fehler mit z.b "In der Eingabe ist keine Zahl" ausgibt?

Hier das Beispiell mit dem ich validieren will:

int iEingabe = Integer.parseInt(JOptionPane.showInputDialog("Bitte geben Sie das Jahr ein"));

Bitte nur eine kleine Hilfestellung :) ... konnte im Java wiki nichts passendes finden.Danke

Expertenantwort
von KnusperPudding, Community-Experte für Java, 20

JOptionPane würde dir hier erstmal einen String ausspucken.

Demnach wäre vielleicht dieser Thread ganz Hilfreich zu dem Thema.

http://stackoverflow.com/questions/5439529/determine-if-a-string-is-an-integer-i...

Kurz zusammen gefasst: du baust dir eine Methode, mit der du überprüfen kannst: "Handelt es sich um eine Zahl?" und reagierst per if-Bedingung dann entsprechend.

Die andere Methode:  du fängst es per Exception ab, da du ja einen Fehler auslöst bei Integer.parseInt();

int iEingabe = 0;
try {
iEingabe = Integer.parseInt(JOptionPane.showInputDialog("Bitte geben Sie das Jahr ein"));
} catch (NumberFormatException ex) {
// Hier Message ausgeben }

(Methode 1 wäre jedoch besser)

Antwort
von DontHaveAName, 28

Umschließe die Eingabe mit einem try catch und fange die NumberFormatException ab.

Alternativ, benutze reguläre Ausdrücke,

Keine passende Antwort gefunden?

Fragen Sie die Community