public class MainClass {
    public static void main(String[] args) {
        /*
            숫자(상수): 정해진 숫자 12, 34
                2진수 : 0, 1
                8진수 : 0 ~7 // 8 == 10, 9 == 11 // [표기법] 011 == 9
                16진수 : 0 ~ 9 A B C D E F(=15) // [표기법] 0xf == 16

            변수(variable): 변경되는 요소(그릇)
                이름을 정해서 그 이름에 값을 입력/출력
                크기, 자료형(문자 or 숫자 or 논리)

             형식:
                자료형 변수명:
                변수명 = 값 <- 대입
         */

        int number;         // integer == 정수            <--- 선언
        number = 123;       //                            <--- 대입

        System.out.println(number);

        number = 234;       // 값 변경
        System.out.println(number);

        int number1 = 345;  // 선언과 함께 대입
        System.out.println(number1);

        // 변수의 작명 규칙
        int a;
        int A;

        // 예약어
            // int int;

        // 맨앞의 숫자는 안 됨
            // int 2ab;
        int ab2;

        // 상수만으로는 안 됨
            // int 123;

        // 연산자가 포함되어서는 안 됨 (+, - , *, /)
        // int +abc;
        //  int *abc; (포인트 안됨)

        // 장문의 변수 스타일
        int number_pos_char;    // 언더바
        int numPosChar;         // 카멜형 선호 ***

        // 한글을 쓸 수는 있다! 하지만 쓰지 말 것.
        int 한글;
        한글 = 1024;
        System.out.print(한글);

        // 흔한 변수명을 피하는 것이 좃다. 너무 간단한 변수명도 피하는 것이 좋다.
        // size, length, object, n ...

        // 변수(그릇)의 종류 -> 문자, 숫자, 문자열, 논리(true/false)
        // 자료형
        // 숫자형
        // 정수
        byte by;                // 1 byte = 8 bit -> 256개의 숫자 (0~255)
        by = 127;               // -128 to 127.
        System.out.println(by);

        short sh;               // 2 byte = 16 bit
        sh = 500;               // -32,768 ~ 32,767
        System.out.println(sh);

        int in;                 // 4 byte = 32 bit
        in = 123456789;         // -2,147,483,648 ~ 2,147,483,647

        long lo;                // 8 byte = 64 bit
        lo = 230942398579013401L; // -9,223,372,036,854,775,808 ~ 9,223,372,036,854,775,807
        // 마지막에 L을 붙이지 않으면 integer로 인식하려고 함

        // 소수 (실수)
        float fl;               // 4 byte = 32 bit
        fl = 123.45F;           // 뒤에 F 를 붙여줘야 한다.

        double dou;             // 8 byte = 64 bit
        dou = 128974928.234;    
        
        // integer, double 많이 씀

        // 문자형
        // 문자
        char c;
        c = 'A';
        c = '한';
        c = '*';

        // 문자열 == String(클래스) => wrapper class
        String str;
        str = "안녕하세요";
        System.out.println(str);

        str = "반갑습니다";
        System.out.println(str);

        // 논리형 true(1) / false(0)
        boolean b;
        b = true;                   // 1로 넣으면 안 됨. 반드시 명시적 예약어 사용할 것. (C나 javascript에서는 가능)
        System.out.println(b);
        b = false;
        System.out.println(b);

    }
}

+ Recent posts