valueOf와 parseInt의 차이점

Sechan Beak·2023년 7월 5일
1

JavaCasting

목록 보기
2/2

결론
Integer.valueOf() -> return Integer
Integer.parseInt() -> return int

wrapper클래스로 반환하냐, 기본 자료형으로 반환하냐 차이..


아래는 두 메소드에 관해서 추가로 정리한 것들이다.

second parameter

추가로 두 메소드 모두 두번째 인자로 진법(radix)를 받을 수 있다.
radix를 따로 지정하지 않을 경우, parseInt메소드 안에서 radix를 10으로 받은 parseInt메소드를 호출하여 casting한다.

Integer.parseInt("1F", 16) // 31

radix가 지정된 valueOf의 경우, radix가 지정된 parseInt를 먼저 호출한 후, 이를 valueOf의 인자로 받아서 리턴한다.

Integer.valueOf("7", 10) // 7

Exception

두 메소드 모두 정수화 시킬 수 없는 문자열에 대해서
NumberFormatException을 던진다.

radix가 지정된 경우, 해당 n진법의 n을 넘어가는 수에 대해서 NumberFormatException을 던진다.

System.out.println(Integer.parseInt("F", 16)); // 16
System.out.println(Integer.parseInt("G", 16));  // NumberFormatException
profile
거사 하나 치르면 올림

0개의 댓글