Problem mit einer float Zahl in Java

  • Hallo!
    Also ich hab folgendes Problem in Java: Hier ein Auszug aus einem Programm
    try { float zahl1 = EprogIO.readFloat();
    float zahl2 = EprogIO.readFloat();

    float ergebnis = zahl1 + zahl2;
    EprogIO.println(ergebnis);
    }

    catch (Exception e)
    {EprogIO.println("FALSCHE EINGABE");
    }

    Wenn ich nun für eine der beiden Zahlen 48fr eingebe gibt er zurecht FALSCHE EINGABE aus ist ja logisch.
    Jedoch wenn ich für eine der beiden Zahlen z.B: 1245d oder 452f eingebe akzeptiert er die eingabe als richtig
    Meine Frage ist nun ob bei float Zahlen solche eingaben die mit d oder f enden zulässig sind?

  • Ja, das ist gleichbedeutend als wenn du z.B. im Code schreibst:
    long l = 355L; oder
    float f = 3.3F; usw.

    Willst du diese "Eingabefehler" vermeiden solltest du den eingelesenen String z.B. mit einer for-Schleife durchlaufen, und jedes Zeichen darauf überprüfen, ob es ungleich 0 bis 9 ist, und wenn ja "FALSCHE EINGABE" ausgeben.


    lg

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!