Numberformatexception in Java

Numberformatexception in Java
Die Entwickler in Java müssen oft mit mehreren Arten von Daten arbeiten, die unterschiedlich formatiert sind. Zum Beispiel das akkumulieren zufällig generierte oder verschlüsselte Daten im Code. In solchen Situationen, um mit dem zu fertig werdenNumberformatexception”In Java ist es hilfreich, die Einschränkungen zu unterlegen, wodurch die Codefunktionalitäten am Ende des Entwicklers optimiert werden.

Dieser Blog wird es näher erläutern und damit umgehen und damit umgehen "Numberformatexception”In Java.

Was ist "numberformatexception" in Java?

Der "NumberformatexceptionEntspricht einer Ausnahme in Java, wenn ein Versuch durchgeführt wird, eine Zeichenfolge mit einem falschen Format in einen numerischen Wert zu verwandeln. Die Konvertierung erfolgt über die “analysieren ()" Methode. Diese Methode holt den primitiven Datentyp der “ab“Saite”.

Syntax

ParseInt (x, y)

In dieser Syntax:

  • X”Bezieht sich auf die String -Darstellung der Dezimalzahlung.
  • y"Transformiert"X”In eine Ganzzahl.

Idealer Fall

Das folgende Beispiel erklärt das ideale Fallszenario, um die Zeichenfolge in eine Ganzzahl ohne Einschränkungen zu verwandeln:

int x = Ganzzahl.ParseInt ("30");
System.aus.println ("Die Ganzzahl ist:"+x);

Wenden Sie im obigen Code die folgenden Schritte an:

  • Geben Sie zunächst den Typ an “Ganze ZahlIn dem die gewünschte Umwandlung erforderlich ist.
  • Wenden Sie nun das an “ananalysieren ()Methode, um die angegebene Zeichenfolge an eine Ganzzahl zu analysieren.
  • Dies wird das gebenganze ZahlDarstellung der angegebenen Zeichenfolge.

Ausgang

In dieser Ausgabe kann beobachtet werden, dass das “ganze ZahlDie Darstellung der Zeichenfolge wird entsprechend abgerufen.

Gründe für das Gesicht "numberformatexception" in Java

Der "Numberformatexception”In Java kann aus mehreren Gründen auftreten. Lassen Sie uns jeden der Gründe nacheinander durchlaufen.

Fall 1: leere Eingangszeichenfolge

In diesem Fall kann die diskutierte Ausnahme aufgrund eines konfrontiert werdenleer”String als die“ bestanden “analysieren ()Parameter der Methode, der in eine Ganzzahl konvertiert werden muss:

int x = Ganzzahl.ParseInt ("");
System.aus.println (x);

Ausgang

Fall 2: Nulleingangszeichenfolge

In diesem Szenario kann die Ausnahme aufgrund des angegebenen “ausgesetzt sein“NullSchlüsselwort als Methodeparameter:

int x = Ganzzahl.ParseInt (Null);
System.aus.println (x);

Ausgang

Notiz: Die Ausnahmeanweisung ist in beiden oben genannten Fällen identisch, da der Wert als Parameter der Methode berücksichtigt wird “Null”.

Fall 3: Eingabezeichenfolge mit zusätzlichen Symbolen

Das Einbeziehen zusätzlicher Symbole in die Zeichenfolge kann wie folgt auch zu der diskutierten Ausnahme führen:

System.aus.println (Ganzzahl.ParseInt ("1,23");

Ausgang

Fall 4: Nicht numerische Eingangszeichenfolge

Eine nicht numerische Zeichenfolge, ich.e., “Fünfunddreißig"In diesem Fall kann auch die" das "verursachen"Numberformatexception" passieren:

int x = Ganzzahl.ParseInt ("fünfunddreißig");
System.aus.println (x);

Ausgang

Fall 5: Eingangszeichenfolge, die den Bereich überschreitet

Die maximale Grenze für die “analysieren ()"Methode ist zu sammeln"11" Figuren. Der Bereich, der diese Zahl überschreitet, kann auch den diskutierten Fehler angezeigt, wie nachstehend:

int x = Ganzzahl.ParseInt ("123452347684933");
System.aus.println (x);

Ausgang

Fall 6: Eingabezeichenfolge mit alphanumerischen Daten

In dieser Situation kann die angegebene Begrenzung aufgrund der enthaltenen Alphabete und Zahlen gleichzeitig in eine Ganzzahl verwandelt werden:

int x = Ganzzahl.ParseInt ("dreiunddreißig");
System.aus.println (x);

Ausgang

Fall 7: Nicht übereinstimmender Datentyp

Das Missverhältnis in der “zurückkehren"Typ und die angegebenen"Datentyp”Kann auch zur Begegnung der diskutierten Begrenzung führen:

int x = Ganzzahl.Parsesint ("30.6 ");
System.aus.println (x);

Beachten Sie, dass der Rückgabetyp in diesem Fall ist “Ganze Zahl,"Aber der angegebene Datentyp ist"schweben", ich.e., 30.6.

Ausgang

Fall 8: Eingangszeichenfolge mit gepolsterten Whitespaces

Die gepolsterten Whitespaces am Start oder am Ende können auch ein Grund dafür sein, dass ein solcher Fehler ausgesetzt ist:

int x = Ganzzahl.ParseInt ("30");
System.aus.println (x);

Ausgang

Hier ging es um die Begrenzung in verschiedenen Szenarien. Lassen Sie uns nun den Ansatz diskutieren, um die diskutierte Einschränkung zu beseitigen.

Wie man mit „numberformatexception“ in Java umgeht?

Die besprochenen “Numberformatexception"Einschränkung in Java kann mit dem" gesetzt werden "versuche ... fangen”Erklärung, indem Sie die Ausnahme der Gesichtsausnahme in der“ fangen “fangen" Block:

versuchen
int x = Ganzzahl.ParseInt ("30");
System.aus.println (x);

catch (numberformatexception e)
System.aus.println ("Ausnahme Catered!");

System.aus.println ("Wiederaufnahme der Ausführung ...");

Wenden Sie in diesem Code -Snippet die folgenden Schritte an:

  • Geben Sie zunächst die “an"versuchenBlock/Anweisung.
  • In diesem Block den Rückgabetyp angeben, i, i.e., “Ganze Zahl”Und wenden Sie die“ ananalysieren ()Methode zur Transformation der angegebenen Zeichenfolge in eine “ganze Zahl”Und anzeigen Sie es an.
  • Beachten Sie, dass der Engpass bei der Ausführung der “konfrontiert wurde“versuchen"Block kann dem" konfrontiert werden "fangen" Block.
  • Die wahrscheinliche Ausnahme, ich.e., “Numberformatexception"Kann jetzt in die" platziert werden "fangen" Block.
  • Zeigen Sie innerhalb dieses Blocks die angegebene Nachricht anstelle der Gesichtsausnahme an.
  • Aus dem "fangenBlock, Zeigen Sie die angegebene Nachricht an, die angibt, dass die Funktionen unabhängig von der aufgetretenen Ausnahme wieder aufgenommen werden.

Ausgang

Aus diesem Ergebnis kann impliziert werden.

Abschluss

Der "NumberformatexceptionIn Java wird ein Versuch unternommen, eine Zeichenfolge mit einem falschen Format in eine Ganzzahl zu verwandeln. Diese Ausnahme kann aus mehreren diskutierten Gründen verursacht werden, ich.e., gepolsterte Weißespaces in der Zeichenfolge, überschrittene String -Grenze usw., und kann über die von der “abgefeuert werdenversuche ... fangen”Aussagen. In diesem Blog wurde die Ansätze zur Besichtigung und Bewältigung der “besprochenNumberformatexception”In Java.