Encodera

Спасибо, что читаете!

Пожертвуйте сайту, мы стараемся ради вас.

Справочник Java

NumberFormatException

Возникает, когда строку нельзя превратить в число.

Доступно с: Java 1.0

Синтаксис

public class NumberFormatException extends IllegalArgumentException

Примеры

Безопасный разбор ввода:

int parseOrDefault(String s, int fallback) {
    try {
        return Integer.parseInt(s);
    } catch (NumberFormatException e) {
        IO.println(e.getMessage());
        return fallback;
    }
}
 
void main() {
    IO.println(parseOrDefault("42", 0));
    IO.println(parseOrDefault("4 2", 0));
    IO.println(parseOrDefault("", 0));
}

Результат:

42
For input string: "4 2"
0
For input string: ""
0

Примечания

Бросается Integer.parseInt(), Double.parseDouble() и похожими методами при пробелах, буквах, пустой строке или выходе за пределы типа. Пробелы по краям можно убрать через strip() до разбора. Это наследник IllegalArgumentException.

См. также

  • IllegalArgumentException — Сообщает, что метод получил недопустимый аргумент.
  • ArithmeticException — Возникает при недопустимой арифметической операции, например целочисленном делении на ноль.

В учебнике

  • try, catch и finally — Обработка исключений в Java — блоки try и catch, несколько catch, multi-catch, finally и выбрасывание исключений через throw.

Спасибо, что читаете!

Пожертвуйте сайту, мы стараемся ради вас.