* Wrapper Class
: primitive type의 변수 ==> 객체로 전환하기 위한 클래스
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
|
package day16;
public class WrapperClass {
public static void main(String[] args) {
// 자바는 객체 지향 언어 ==> 모든 것을 개체로 처리
// OOP
int a = 10; // 객체가 아니다.
// Wrapper Class
// primitive type의 변수 ==> 객체로 전환하기 위한 클래스
Integer it = new Integer(a); // java.lang.Integer;
System.out.println(Integer.MIN_VALUE);
System.out.println(Integer.MAX_VALUE);
System.out.println(it.toBinaryString(a));
double d = it.doubleValue();
System.out.println("d : "+d);
int c = it.intValue(); // int 값 리턴
System.out.println("c : "+c);
// int k = it; // xxx 참조변수 it을 primitive type 변수에 담을 수 없음
// Integer it2 = 100; // xxx
// String str = new String("java");
String str = "java"; // 불공평... 불공평.. 세상 불공평...
Integer it2 = 100; // boxing
int k = it2; // unboxing
// byte 127 값을 Wrapper class b1을 할당
Byte b1 = 127;
// long 타입 f로 형변환을 해서
long f = b1.longValue();
// 콘솔에 출력
System.out.println(f);
// 20의 이진수 값을 구한다면 ???
System.out.println(Integer.toBinaryString(20));
}
}
|
cs |
* String 클래스 전용 : <String>
부모-자식 간에는 형변환이 가능하지만..(Object - String)
형제 간에는 형변환이 불가(Integer - String) > 500은 불가
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
|
package day16;
import java.util.ArrayList;
public class ArrayListEx2 {
public static void main(String[] args) {
// 이 ArrayList는 String 클래스 전용입니다.
// String 이외의 것들은 들어올 수 없다. <String>
ArrayList<String> list = new ArrayList<String>();
list.add("딸기");
list.add("사과");
list.add("수박");
// list.add(500); // wrapper 변환 ==> Object 형변환
list.add("오렌지");
System.out.println("list : "+list);
// 과일명 두번째 글자만 콘솔에 출력
for(int i=0; i<list.size();i++) {
// Object obj = list.get(i);
String str = list.get(i);
System.out.println(str.substring(1, 2));
}
// 부모-자식 간에는 형변환이 가능하지만..(Object - String)
// 형제 간에는 형변환이 불가(Integer - String) > 500은 불가
}
}
|
cs |
'Java' 카테고리의 다른 글
| [Java] Generic (미지수 T) + settergetter 설정, 향상된 for문 (0) | 2023.03.24 |
|---|---|
| [Java] 로또 번호 생성기 (Lotto) (0) | 2023.03.24 |
| Java Collection Framework (JCF) / Collection (List - ArrayList, Vector, Stack / Set / Map) (0) | 2023.03.23 |
| [Java] java.util 클래스 (java.util.Calendar) (0) | 2023.03.23 |
| [Java] 윈도우 창 만들기 <응용> - 로봇 움직이기 (0) | 2023.03.22 |