Java

[Java] Wrapper Class / String 클래스 전용 <String>

소댓 2023. 3. 23. 18:48

 

* 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(12));
        }
        
        // 부모-자식 간에는 형변환이 가능하지만..(Object - String)
        // 형제 간에는 형변환이 불가(Integer - String) > 500은 불가
        
    }
}
 
cs