개요
Integer.valueOf
와Integer.parseInt
두 메서드는 모두 문자열을 정수로 변환하는 역할을 한다.
- 다만, 사용 방식과 반환 값, 그리고 성능 면에서 몇 가지 차이점이 있다.
반환 타입
Interger.valueOf
Interger
객체를 반환함
Integer.parseInt
- 기본 데이터 타입
int
를 반환
- 기본 데이터 타입
캐싱
Interger.valueOf
- -128 ~ 127 까지의 정수에 대한
Interger
객체는 캐싱되어있음
- 같은 숫자를 요청하는 경우 캐싱된 객체를 반환하여 메모리 효율성 증대
- 진짜 미미할듯 ㅋ
- -128 ~ 127 까지의 정수에 대한
Integer.parseInt
- 캐싱 X 근데 기본타입이라 캐싱의 의미가 없음.
사용용도
Interger.valueOf
- 객체가 반환타입으로 필요한 경우
- 캐싱의 이점을 누리는 경우
Integer.parseInt
- 정수 값만 필요한 경우
성능
Interger.valueOf
- 캐싱범위내면 빠르게 작동가능
Integer.parseInt
- 캐싱 X , 캐싱범위밖이라면 일반적으로 더 빠름
근데 원래 리소스 자체가 워낙이 안먹는 작업이라 의미 X
NULL처리
Interger.valueOf
- 객체 반환이기에, NULL 저장가능
Integer.parseInt
- NULL 처리가 불가능함
Uploaded by N2T
'자바 > 일반' 카테고리의 다른 글
[객체지향 생활체조] __규칙 8: 일급 콜렉션을 쓴다.__ (0) | 2024.02.24 |
---|---|
BIGDECIMAL 사용시 주의점 (0) | 2024.02.24 |
[팁] compareTo 기준점 (0) | 2024.02.19 |
final 키워드 사용처 (0) | 2023.11.04 |
[HTTP] illegalStateException 사용시 응답은 어떤식으로 던져질까? (0) | 2023.11.01 |