Java
94. 오토박싱 & 언박싱, 문자열과 숫자변환 - 패스트캠퍼스 백엔드 부트캠프 3기
gkss2tpt
2024. 12. 31. 16:20
1. 문자열을 숫자로 변환하기
- 문자열을 숫자로 변환하는 다양한 방법
int i = new Integer("100").intValue(); // floatValue(), longValue(),...
int i2 = Integer.parseInt("100"); // 주로 이 방법을 많이 사용.
Integer i3 = Integer.valueOf("100");
문자열 -> 기본형 | 문자열 -> 래퍼 클래스 |
byte b = Byte.parseByte("100"); | Byte b = Byte.valueOf("100"); |
short s = Short.parseShort ("100"); | Short s = Short.valueOf("100"); |
int i = Integer.parseInt ("100"); | Integer i = Integer.valueOf("100"); |
long l = Long.parseLong ("100"); | Long l = Long.valueOf("100"); |
float f = Float.parseFloat ("3.14"); | Float f = Float.valueOf("3.14"); |
double d = Double.parseDouble ("3.14"); | Double d = Double.valueOf("3.14"); |
- n진법의 문자열을 숫자로 변환하는 방법
int i4 = Integer.parseInt("100", 2); // 2진수 100(2) -> 4
int i5 = Integer.parseInt("100", 8); // 8진수 100(8) -> 64
int i6 = Integer.parseInt("100", 16); // 16진수 100(16) -> 256
int i7 = Integer.parseInt("FF", 16); // 16진수 FF(16) -> 255
2. 오토박싱 & 언박싱
- JDK1.5이전에는 기본형과 참조형간의 연산이 불가능
int i = 5;
Integer iObj = new Integer(7);
int sum = i + iObj; // JDK1.5이후 OK
컴파일 전의 코드 | 컴파일 후의 코드 |
in i = 5; Integer iObj = new Integer(7); int sum = i + iObj; |
int i = 5; Integer iObj = new Integer(7); int sum = i + iObj.intValue(); |
- 기본형의 값을 객체로 자동변환하는 것을 오토박싱, 그 반대는 언박싱
ArrayList<Integer> list = new ArrayList<Integer>();
list.add(10); // 오토박싱 10 -> new Integer(10)
int value = list.get(0); // 언박싱 new Integer(10) -> 10