ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 변수 선언과 자료형, 상수와 리터럴
    JAVA 2022. 5. 4. 09:39

    변수를 선언하려면 그 변수에 맞는 데이터 타입을 설정하고 선언해야한다.

    //선언하고, 초기화
    int age;
    age = 10;
    //선언과 동시에 초기화
    int age = 10;

    위처럼 데이터 타입과 함께 선언과 초기화를 할 수 있다.

    변수 이름은 숫자로 시작할 수 없고, 이미 사용되는 예약어는 사용할 수 없다. 

     

    먼저, 정수를 표현해보자.

    정수는

    1바이트인 byte

    2바이트인 short

    4바이트인 int (숫자는 항상 4바이트로 잡히기 때문에 long을 쓰면 숫자 뒤에 L 또는 l을 써서 long임을 표현해야함)

    8바이트인 long 가 있다. 

    즉, 1바이트는 2^8개에서 맨앞에 하난 부호를 결정하므로 2^7개가 되며, -2^7 ~ 2^7-1개가 된다.

    예시로

    int num = 12345678900; //에러
    long lnum = 12345678900L; //정상

     

    이제, 실수를 표현해보자.

    실수는

    4바이트인 float

    8바이트인 double 이 있다.

    실수도 정수와 마찬가지로 항상 8바이트로 잡히기 때문에

    double dnum = 3.14;
    float fnum = 3.14F;

    4바이트로 핸들링하려면 float로 하겠습니다로 F를 붙여줘야 한다.

     

    그리고, 문자를 표현해보자.

    문자는 정수로 표현을 한다. 예를 들면, A는 65라는 정수로 표현을 하는데 이런 약속을 문자세트라고 한다.

    종류론 ASKII, euc-kr등이 있는데, 나라마다 달라서 통합하기 위해 만든 표준이 UNICODE이다.

    (utf-8 (1~4바이트) , utf-16 (2바이트) 등)

    문자는

    char이란 데이터 타입을 쓴다. 그리고 65라고 숫자로 표현해도 'A'가 된다.

    char ch = 'A'; //2byte

    만약, "A"로 쓰면 문자열이 된다. (char 문자랑은 아에 다른 값)

     

    이제, 논리형을 알아보자.

    논리형은 true 또는 false 두가지가 있고, 값이 존재하는지, 배열이 비어있는지, 결과가 참인지 거짓인지등을 표현하며, 1바이트를 사용한다. 그리고 자료형은 boolean이라고 쓴다.

    boolean isMarried = true;

     

    그리고 자료형 없이 변수를 사용하는 방법이 있는데, 지역 변수에만 가능하다고 한다.

    지역 변수는  {   } 안에서 사용하는 변수를 말한다. 즉, 함수안에서 사용되는 변수를 지칭한다.

    함수 내에서

    var i = 10;
    var j = 10.0;
    var str = "hello";

    위처럼 쓰면 자동으로 i 는 int,  j 는 double,  str 은 string으로 선언된다. 하지만 str = "test"이라고 쓴 걸 중간에 str=3이렇게 다른 타입의 값으로 대체할 순 없다. 

     

    마지막으로, 변하지 않는 상수와 리터럴 그리고 변수의 자료형 변환에 대해 알아보자.

    상수는 변하지 않는 수를 뜻하며, final 예약어를 이용해 선언한다. 그리고 차별화를 하기 위해서 대문자를 사용한다.

    final int MAX_NUM = 100;

    위처럼 사용하며, 한번 선언하면 바꿀 수 없다.

     

    리터럴은 프로그램에서 사용하는 숫자, 문자, 논리값을 뜻하며, 리터럴은 상수 풀에 있다. 

    즉, 정수 리터럴은 int  ,  실수 리터럴은 double로 저장된다.

    int num = 10 //10부분이 리터럴

     

    마지막으로, 형 변환은 서로 다른 자료형 간에 연산등의 수행을 하려고 하나의 자료형을 통일하는 것을 말한다.

    바이트 크기가 작은 자료형에서 큰 자료형으론 자동으로 형 변환이 되며, 

    덜 정밀한(정수) 자료형에서 더 정밀한(실수) 자료형으로도 자동으로 된다.

     

    'JAVA' 카테고리의 다른 글

    반복문(while, do while, for)  (0) 2022.05.12
    조건문(if, switch-case)  (0) 2022.05.11
    연산자들  (0) 2022.05.09
    컴퓨터에서 자료 표현하기  (0) 2022.05.03
    폴더만들기  (0) 2022.05.03

    댓글

Designed by Tistory.