Heim >Java >javaLernprogramm >Wie vermeide ich „java.lang.NumberFormatException' beim Parsen von „N/A'-Strings?

Wie vermeide ich „java.lang.NumberFormatException' beim Parsen von „N/A'-Strings?

Mary-Kate Olsen
Mary-Kate OlsenOriginal
2024-12-05 22:30:12784Durchsuche

How to Avoid `java.lang.NumberFormatException` When Parsing

java.lang.NumberFormatException beim Parsen einer „N/A“-Zeichenfolge verhindern

Beim Versuch, eine numerische Zeichenfolge zu analysieren, ist es wichtig, dies sicherzustellen seine Gültigkeit, um NumberFormatException zu verhindern. Ein häufiges Problem tritt auf, wenn auf „N/A“-Zeichenfolgen gestoßen wird, die nicht in eine Ganzzahl konvertiert werden können.

Ausnahmeübersicht:

Die NumberFormatException wird ausgelöst, wenn eine ungültige Zeichenfolge vorliegt Es wird versucht, in einen bestimmten numerischen Typ analysiert zu werden, beispielsweise eine Ganzzahl (Integer.parseInt). Wie im folgenden Stack-Trace zu sehen ist, führt „N/A“ zu dieser Ausnahme, da es sich nicht um eine gültige Ganzzahldarstellung handelt.

Präventionsstrategien:

Um dies zu verhindern Ausnahme können Sie eine der folgenden Techniken implementieren:

Ausnahmebehandlung:

Dieser Ansatz beinhaltet das Umschließen Der Parsing-Vorgang innerhalb eines Try-Catch-Blocks, in dem die NumberFormatException abgefangen und entsprechend behandelt wird. Hier ist ein Beispiel:

try {
    int i = Integer.parseInt(input);
} catch (NumberFormatException ex) {
    // Handle the exception here (e.g., log it, display an error message)
}

Integer Pattern Matching:

Alternativ können Sie einen regulären Ausdruck verwenden, um zu prüfen, ob die Zeichenfolge dem erwarteten Integer-Format entspricht, bevor Sie es versuchen Analysieren Sie es. Hier ist ein vereinfachtes Beispiel:

String pattern = "-?\d+";
if (input.matches(pattern)) {
    int i = Integer.parseInt(input);
} else {
    // Handle non-integer string
}

Bei diesem Ansatz definiert das Muster gültige Ganzzahldarstellungen, und wenn die Eingabezeichenfolge nicht diesem Muster entspricht, kann sie separat behandelt werden.

Durch die Implementierung einer dieser Strategien können Sie sicherstellen, dass Ihr Code nicht ganzzahlige Zeichenfolgen wie „N/A“ ordnungsgemäß verarbeitet und so verhindert, dass NumberFormatException seine Ausführung stört.

Das obige ist der detaillierte Inhalt vonWie vermeide ich „java.lang.NumberFormatException' beim Parsen von „N/A'-Strings?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn