![[Java] Integer.parseInt()와 Integer.valueOf() 메소드의 특징과 차이점](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FNHKEr%2FbtsJpKTVaem%2FMyY6DetBQyx6UKmQk2VK60%2Fimg.png)
[Java] Integer.parseInt()와 Integer.valueOf() 메소드의 특징과 차이점Programming/Java2024. 9. 4. 00:11
Table of Contents
parseInt() 메소드와 valueOf() 메소드는 모두 문자열을 정수로 변환하는 데 사용되지만, 반환 타입과 몇 가지 세부적인 동작에서 차이점이 있다.
📌 Integer.parseInt(String s)
- 기능: 주어진 문자열 s를 정수(int)로 변환
- 반환값: 기본 자료형인 int.
- 예시:
int number = Integer.parseInt("123"); // 문자열 "123"을 정수 123으로 변환
- 사용시점: parseInt()는 단순히 문자열을 int로 변환하고자 할 때 사용된다.
📌 Integer.valueOf(String s)
- 기능: 주어진 문자열 s를 정수 객체(Integer)로 변환
- 반환값: Integer 객체 (참조 자료형).
- 예시:
Integer number = Integer.valueOf("123"); // 문자열 "123"을 Integer 객체로 변환
- 사용시점: valueOf()는 Integer 객체가 필요할 때 사용된다. 예를 들어, null 값이 올 수 있거나 객체로서 활용될 수 있는 경우에 적합하다.
❗주요 차이점
- 반환 타입:
- parseInt()는 기본 자료형 int를 반환한다.
- valueOf()는 참조 자료형인 Integer 객체를 반환한다.
- 객체 생성:
- parseInt()는 단순히 문자열을 int로 변환하여 반환하므로 불필요한 객체 생성이 없다.
- valueOf()는 문자열을 Integer 객체로 변환하므로, 필요에 따라 객체를 생성한다.
하지만, valueOf() 메소드는 캐싱된 객체(예: -128에서 127 사이의 값)를 반환할 수도 있다.
- 사용 사례:
- parseInt()는 연산에 사용되는 정수를 얻기 위해 많이 사용된다.
- valueOf()는 Integer 객체를 필요로 하는 상황, 예를 들어 컬렉션에서 사용하거나, null 처리가 필요한 경우에 유용하다.
결론
- parseInt()는 성능을 고려하여 기본 자료형 int를 필요로 하는 경우에 적합하다.
- valueOf()는 객체가 필요하거나, null 처리가 중요한 경우에 적합하다.
🔑 참고
'Programming > Java' 카테고리의 다른 글
자바에서 Stack보다 Deque가 권장되는 이유 (1) | 2025.02.24 |
---|
@킴준현 :: 차근차근 꾸준히
포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!