🔥 Vamos/Java

1030 | 자바의 정석 기초편 :: ch9-28~9-31

unikue 2022. 10. 30. 22:24

문자열을 숫자로 변환하기

 

✔ 문자열을 숫자로 변환하는 방법

int i = new Integer("100").intValue(); // 래퍼클래스 생성자로 생성해서 intValue()메서드로 다시 기본형으로 전환
int i2 = Integer.parseInt("100"); // 문자열 → 기본형 주로 이 방법을 많이 사용
Integer i3 = Integer.valueOf("100"); // 문자열 → 래퍼클래스 변환 가능하나 int i3으로도 가능.

 

 

✔ n진법의 문자열을 숫자로 변환하는 방법

int i = Integer.parseInt("100",2) // 100(2) > 4
int i2 = Integer.parseInt("100",8) // 100(8) > 64
int i3 = Integer.parseInt("100",16) // 100 (16) > 256
int i4 = Integer.parseInt("FF",16) // FF(16) > 255
int i5 = Integer.parseInt("FF") // 뒤가 공란이면 10진수로 해석해서 에러남

 

 

오토박싱 & 언박싱

: 기본형과 참조형간의 자동 형변환

: jdk 1.5 전에는 기본형과 참조형간 연산이 불가했다

 

✔ 오토 박싱 

int → Integer

 

✔ 언박싱

Integer → int (똑같이 자동으로 변환해줌)

컴파일 전 코드  자동 컴파일 후 코드
nt i = 5;
Integer iObj = new Integer(7);
int sum = i + iObj // error
nt i = 5;
Integer iObj = new Integer(7);
int sum = i + iObj.intValue(); // 래퍼클래스를 기본형으로 자동 변환(언박싱)
int i = 10;
Integer intg  = (Integer) i ;
Object obj = (object) i;
Integer intg = Integer.valueOf(i);
Object obj = (Object)Integer.valueOf(i);
Long lng = 100L; Long lng = new Long(100L); // 기본형 바로 저장 가능