NumberFormatException — 문자열을 숫자로 바꿀 수 없을 때

NumberFormatException — 문자열을 숫자로 바꿀 수 없을 때

NumberFormatException은 애플리케이션이 문자열을 숫자 타입으로 변환하려 했는데 그 문자열의 형식이 적절하지 않을 때 던져지는 예외예요.

출처: Java API Reference

본문

Integer.parseInt("abc")처럼 숫자로 해석할 수 없는 문자열을 파싱하려 하면 이 예외가 나와요. 대표적인 예가 Integer.parseInt(String)이에요. 사용자 입력이나 외부 데이터를 숫자로 바꿀 때 흔히 만날 수 있어서, 파싱하기 전에 입력 검증을 하거나 예외를 적절히 처리하는 게 좋아요.

상속 구조는 다음과 같아요.

java.lang.Object
  java.lang.Throwable
    java.lang.Exception
      java.lang.RuntimeException
        java.lang.IllegalArgumentException
          java.lang.NumberFormatException

IllegalArgumentException의 하위 클래스예요. "잘못된 인자"의 특수한 경우로 보면 돼요.

생성자

  • NumberFormatException() — 상세 메시지 없이 생성해요.
  • NumberFormatException(String s) — 지정된 상세 메시지로 생성해요.

더 알아보기 (Learn more)