Verhindern einer java.lang.NumberFormatException für die Eingabe nicht ganzzahliger Zeichenfolgen
Beim Auftreten einer java.lang.NumberFormatException mit der Meldung „Zur Eingabe string: „N/A““ zeigt an, dass Sie versuchen, eine Zeichenfolge, die keine gültige Ganzzahl darstellt, in einen Ganzzahlwert zu analysieren. Die Zeichenfolge „N/A“ ist in diesem Fall keine Ganzzahl.
Lösung:
Es gibt zwei Ansätze, um diese Ausnahme zu verhindern:
Ausnahmebehandlung:
Verwenden Sie den Try-Catch-Block, um die NumberFormatException zu behandeln und im Falle einer Ausnahme geeignete Maßnahmen zu ergreifen Nicht-Ganzzahl-Zeichenfolge:
try { int i = Integer.parseInt(input); } catch (NumberFormatException ex) { // Handle the exception here, e.g., print an error message or replace the non-integer value with a default value. }
Ganzzahlige Musterübereinstimmung:
Validieren Sie die Eingabezeichenfolge mithilfe eines regulären Ausdrucks, bevor Sie sie in eine Ganzzahl analysieren:
String pattern = "-?\d+"; if (input.matches(pattern)) { // Checks if the string matches the pattern of an integer (including negative values) int i = Integer.parseInt(input); } else { // The input string is not an integer. Handle it appropriately. }
Durch die Implementierung eines dieser Ansätze können Sie sicherstellen, dass nur gültige Ganzzahlzeichenfolgen in Ganzzahlen geparst werden, wodurch das Auftreten von verhindert wird java.lang.NumberFormatException.
Das obige ist der detaillierte Inhalt vonWie verhindert man „java.lang.NumberFormatException' beim Parsen von nicht ganzzahligen Zeichenfolgen in Java?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!