HOWTO · Java

Java Fehler Numberformatexception for Input String beheben

So beheben Sie die Nummernformatausnahme für einen EingabeZeichenkettenfehler in Java.

Auf dieser Seite

In dieser Anleitung erfahren Sie, wie Sie die numberformatexception für Eingabestrings in Java verhindern können. Um es vollständig zu verstehen, müssen wir einige der Grundlagen der Ausnahmebehandlung in Java weiterverfolgen. Lassen Sie uns einen tieferen Blick darauf werfen.

Ausnahmen in Java

Die Ausnahme ist eine Klasse, die verwendet wird, um einige Bedingungen zu behandeln. Diese Klasse und ihre Unterklassen sind eine Form von Throwable und geben eine bestimmte Bedingung an, die Sie beim Erstellen von Anwendungen abfangen müssen.

Im Allgemeinen werden Sie zwei Arten von Ausnahmen sehen. Sie werden als Checked Exception und Unchecked Exception bezeichnet.

Geprüfte Ausnahmen liegen unter den Ausnahmen zur Kompilierzeit, ungeprüfte Ausnahmen unter RuntimeException. Ein Programmierer kann seine benutzerdefinierte Ausnahme machen, indem er die Ausnahmeklasse erweitert.

Erfahren Sie mehr über die Ausnahme hier.

Behandlung von numberformatexception für Input String in Java

Im Allgemeinen behandeln wir die Ausnahme mit der Methode try...catch. Die Zahlenformatausnahme für die EingabeZeichenkette in Java ist dieselbe.

Wenn ein String als Eingabe gesendet und in einen Integer geparst wird, muss er eine numberformatexception auslösen. Sie können den Fehler vermeiden, indem Sie ihn mit den Methoden try...catch abgeben.

Sehen Sie sich den folgenden selbsterklärenden Code an.

import java.util.*;
public class Main {
  public static void main(String args[]) {
    String var = "N/A";

    // When String is not an integer. It must throw NumberFormatException
    // if you try to parse it to an integer.
    // we can avoid from Exception by handling Exception.
    // Exception Is usually Handle by try Catch Block.
    try {
      int i = Integer.parseInt(var);
      // if var is not a number than this statement throw Exception
      // and Catch Block will Run
      System.out.println("Number");
    } catch (NumberFormatException ex) { // handling  exception
      System.out.println(" Not A Number");
    }
  }
}

Ausgabe:

Not A Number

Im obigen Code sehen Sie, dass das Parsen des Strings var nicht funktioniert. Dies ist eine Bedingung, die wir überprüfen müssen.

Also haben wir es mit dem try...catch-Block gehandhabt. Wenn der Stringwert keine Zahl ist, wird der Block catch ausgeführt.