Ten blog będzie rozwinąć się w obliczu i radzenia sobie z „NumberFormatexception„W Javie.
Czym jest „NumberFormatexception” w Javie?
„„NumberFormatexception”Odpowiada wyjątkowi w Javie, gdy próba przekształcenia łańcucha o nieprawidłowym formacie w wartość liczbową. Konwersja odbywa się za pośrednictwem „parseint ()" metoda. Ta metoda pobiera prymitywny typ danych „Strunowy".
Składnia
parseint (x, y)W tej składni:
Idealny przypadek
Poniższy przykład wyjaśnia idealny scenariusz sprawy przekształcenia łańcucha w liczbę całkowitą bez ograniczeń:
int x = liczba całkowita.parseint („30”);W powyższym kodzie zastosuj kroki poniżej modyfikowanych:
Wyjście
W tym wyjściu można zaobserwować, że „liczba całkowita„Reprezentacja łańcucha jest odpowiednio pobierana.
Przyczyny skierowanego „Numberformatexception” w Javie
„„NumberFormatexception„W Javie można napotkać z wielu powodów. Przejdźmy przez każdy z powodów jeden po drugim.
Przypadek 1: pusty ciąg wejściowy
W takim przypadku omawiany wyjątek może być skierowany z powodu „pusty„Ciąg przeszedł jako„parseint ()„Parametr metody, który należy przekonwertować na liczbę całkowitą:
int x = liczba całkowita.parseint („”);Wyjście
Przypadek 2: NULL WEJŚCIA Ciąg
W tym scenariuszu wyjątek może być skierowany z powodu określonego „zero„Słowo kluczowe jako parametr metody:
int x = liczba całkowita.parseint (null);Wyjście
Notatka: Instrukcja wyjątku jest identyczna w obu powyższych przypadkach, ponieważ wartość jako parametr metody jest brany pod uwagę „zero".
Przypadek 3: ciąg wprowadzający z dodatkowymi symbolami
Uwzględnienie dodatkowych symboli do łańcucha może również skutkować omówionym wyjątkiem, w następujący sposób:
System.na zewnątrz.println (liczba całkowita.parseint („1,23”));Wyjście
Przypadek 4: nie-numeryczny ciąg wejściowy
Nie-numeryczny ciąg, i.mi., "Trzydzieści pięć”W tym przypadku może również spowodować„NumberFormatexception" wystąpić:
int x = liczba całkowita.Parseint („trzydzieści pięć”);Wyjście
Przypadek 5: ciąg wejściowy przekracza zakres
Maksymalny limit dla „parseint ()„Metoda polega na gromadzeniu się”11" postacie. Zakres przekraczający tę liczbę może również wyświetlać omawiany błąd, jak to miało miejsce poniżej:
int x = liczba całkowita.Parseint („123452347684933”);Wyjście
Przypadek 6: String wejściowy z danymi alfanumerycznymi
W tej sytuacji podane ograniczenie może być skierowane z powodu zawartych alfabetów i liczb jednocześnie przekształcanych w liczbę całkowitą:
int x = liczba całkowita.Parseint („trzydzieści 1”);Wyjście
Przypadek 7: niedopasowany typ danych
Niedopasowanie w „powrót”Typ i określony„typ danych”Może również skutkować spotkaniem omówionego ograniczenia:
int x = liczba całkowita.parseint ("30.6 ”);Zauważ, że w tym przypadku typ zwracania to „Liczba całkowita,”Ale określony typ danych to„platforma", I.mi., 30.6.
Wyjście
Przypadek 8: String wejściowy z wyściełanymi białymi występami
Wyściełane białe listy na początku lub na końcu mogą być również powodem, dla którego można się napotkać:
int x = liczba całkowita.parseint („30”);Wyjście
Chodziło o granice w różnych scenariuszach. Omówmy teraz podejście do wyeliminowania omówionego ograniczenia.
Jak poradzić sobie z „NumberFormatexception” w Javie?
Omówione „NumberFormatexception„Ograniczenie Java można zaspokoić za pomocą„próbuj złapać”Oświadczenie, łapiąc wyjątek w„złapać" blok:
próbowaćW tym fragmencie kodu zastosuj następujące kroki:
Wyjście
Z tego wyniku można sugerować, że wyjątek został odpowiednio poradzi sobie.
Wniosek
„„NumberFormatexception”W Javie jest skierowana, gdy podjęto próbę przekształcenia ciągu z nieprawidłowym formatem w liczbę całkowitą. Ten wyjątek może być spowodowany z wielu omawianych powodów, tj.mi., Wyściełane białe listy w ciągu, przekroczone limit ciągu itp., i można je poradzić za pośrednictwem „próbuj złapać" sprawozdania. Ten blog omawiał podejście do stawienia czoła i radzenia sobie z „NumberFormatexception„W Javie.