JAVA chapter 02. 변수와 타입. 


2.2 데이터 타입


2.2.1 기본(원시 : primitive) 타입


2.2.2 정수 타입(byte, char, short, int, long)



// String은 기본타입이 아니다. String은 클래스 타입이고, String 변수는 참조 변수이다.

  문자열을 String 변수에 대입하면 문자열이 변수에 직접 저장되는것이 아니라

  String 객체가 생성되고, String 변수는 String 객체의 번지를 참조하게 된다.


// 변수에서는 어떤 진수로 입력하더라도 동일한 값이 2진수로 변환되어 저장된다.



1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
package sec02.exam02_cha
 
public class CharExample {
    public static void main(String[] args) {
        char c1 = 'A'; //문자를 직접 저장
        char c2 = 65; //십진수로 저장
        char c3 = '\u0041'; //16진수로 저장
        
        char c4 = '가'; //문자를 직접 저장
        char c5 = 44032; //십진수로 저장
        char c6 = '\uac00'; //16진수로 저장
        
        int uniCode = c1; //유니코드 얻기
        
        System.out.println(c1);
        System.out.println(c2);
        System.out.println(c3);
        System.out.println(c4);
        System.out.println(c5);
        System.out.println(c6);
        System.out.println(uniCode);
    } 
}
 



// 8진수일 경우 숫자 앞에 '0'을 붙이면 되고,

// 16진수일 경우 숫자 앞에 '0X'를 붙이면 된다.


1
2
3
4
5
6
7
8
9
10
11
12
13
package sec02.exam03_int;
public class IntExample {
    public static void main(String[] args) {
        int var1 = 10;        //10진수로 저장
        int var2 = 012;        //8진수로 저장
        int var3 = 0xA;        //16진수로 저장
        
        System.out.println(var1);
        System.out.println(var2);
        System.out.println(var3);
    }
}
 
cs


// long 타입의 변수를 초기화할 때에는 정수값 뒤에 소문자 'l'이나 대문자 'L'을 붙일 수 있다

이것은 4byte 정수 데이터가 아니라 8byte 정수 데이터임을 컴파일러에게 알려주기 위한 목적이다.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
package sec02.exam04_long;
public class LongExample {
    public static void main(String[] args) {
        long var1 = 10;        
        long var2 = 20L;        
        //long var3 = 1000000000000;     //컴파일 에러
        long var4 = 1000000000000L;
        long var5 = 1000000000// 10자리수까지는 출력가능
        
        System.out.println(var1);
        System.out.println(var2);
        System.out.println(var4);
        System.out.println(var5);
    } 
}
 
cs


2.2.3 실수 타입(float, double)


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
package sec02.exam05_float_double;
public class FloatDoubleExample {
    public static void main(String[] args) {
        //실수값 저장
        double var1 = 3.14;        
        //float var2 = 3.14;        //컴파일 에러(Type mismatch)
        float var3 = 3.14F;
        
        //정밀도 테스트
        double var4 = 0.1234567890123456789;
        float var5 = 0.1234567890123456789F;
        
        System.out.println("var1: " + var1);
        System.out.println("var2: " + var3);
        System.out.println("var4: " + var4);
        System.out.println("var5: " + var5);
        
        //e 사용하기
        int var6 = 3000000;
        double var7 = 3e6;
        float var8 = 3e6F;
        double var9 = 2e-3;
        System.out.println("var6: " + var6);
        System.out.println("var7: " + var7);
        System.out.println("var8: " + var8);
        System.out.println("var9: " + var9);
    } 
}
cs


2.2.4 논리 타입(boolean)

1
2
3
4
5
6
7
8
9
10
11
package sec02.exam06_boolean;
public class BooleanExample {
    public static void main(String[] args) {
        boolean stop = true;
        if(stop) {
            System.out.println("중지합니다.");
        } else {
            System.out.println("시작합니다.");
        }
    } 
}
cs






Posted by 너래쟁이
: