블로그를 이전하였습니다. 2023년 11월부터 https://bluemiv.github.io/에서 블로그를 운영하려고 합니다. 앞으로 해당 블로그의 댓글은 읽지 못할 수 도 있으니 양해바랍니다.
반응형
목표
Integer.parseInt()
와 Integer.valueOf()
의 차이를 알아본다.
차이점
문자열로 된 숫자를 parseInt
와 valueOf
를 사용하여 타입 변환을 해보고 출력해보면 같은 결과가 나온다.
public class Main {
public static void main(String[] args) {
String angel = "1004";
// 출력
System.out.println(Integer.parseInt(angel)); // 1004
System.out.println(Integer.valueOf(angel)); // 1004
}
}
1004
1004
타입을 찍어보면, parseInt
의 경우는 getClass()
라는 메소드가 없어서 오류가 발생한다.
반면, valueOf
는 getClass().getName()
이 있다.
왜냐하면 parseInt는 primitive 타입의 int를 반환하고, valueOf는 Integer 객체를 반환하기 때문이다.
public class Main {
public static void main(String[] args) {
String angel = "1004";
// 출력
// System.out.println(Integer.parseInt(angel)); // 1004
// System.out.println(Integer.valueOf(angel)); // 1004
// 타입 확인
// System.out.println(Integer.parseInt(angel).getClass().getName()); // 오류
System.out.println(Integer.valueOf(angel).getClass().getName()); // java.lang.Integer
}
}
구현부 살펴보기
parseInt는 반환값으로 int
타입을 반환한다.
public static int parseInt(String s) throws NumberFormatException {
return parseInt(s,10);
}
valueOf는 반환값으로 Integer
객체를 반환한다.
public static Integer valueOf(String s) throws NumberFormatException {
return Integer.valueOf(parseInt(s, 10));
}
반응형
'Language > JAVA' 카테고리의 다른 글
Java 파일 존재 여부, 파일 또는 디렉토리 확인하기 (0) | 2020.10.17 |
---|---|
Java와 Selenium을 이용하여 웹 크롤러 만들기 (0) | 2020.10.17 |
Maven으로 Java 프로젝트 생성하기 (0) | 2020.09.11 |
Java 의 주석 (한 줄 주석, 여러줄 주석, 문서 주석) (0) | 2020.05.29 |
자바(JAVA)의 개념 및 특징 정리 (0) | 2020.05.29 |