기본 자료형이란? (feat. JAVA)

nkcho·2023년 2월 2일

개념 아카이빙

목록 보기
2/9

기본자료형(Primitive Data Types)이란?

  • Primitive의 의미

    • 일반명사적 의미 : ‘원시적인, 원시형태의’
    • 고유명사적 의미 : ‘가장 기본적인 동작/형태에 대한 의미적 표현’
  • Data Type(자료형)의 의미
    - 일반명사적 의미 : 자료의 형태/유형/종류
    - 고유명사적 의미 : 컴퓨터 언어에서 실수, 정수, 불린 자료형 따위의 여러 데이터를 식별하는 분류로서, 더 나아가 해당 자료형에 대한 가능한 값, 해당 자료형에서 수행을 마칠 수 있는 명령들, 데이터의 의미, 해당 자료형의 값을 저장하는 방식을 말함.
    - 해당 데이터가 메모리에 어떻게 저장되고, 프로그램에서 어떻게 처리되어야 하는지를 명시적으로 알려주는 것

    따라서 기본자료형이란, 가장 기본적인 형태의 값을 식별하고 저장하는 형태이자 방식.

자바에서 말하는 가장 기본적인 자료형(Data Type)이 뭔데?

  • 정수(양의 정수, 음의 정수, 0)
  • 실수(유리수와 무리수 전체)
  • 문자(’ㄱ', ‘A’ 등의 문자)
  • 불린(True, False)

기본자료형은 왜 사용할까?

  • 컴퓨터 언어로 입력된 데이터의 값이 가장 기본적인 형태인지, 그 중에서 어떤 기본형인지를 식별하기 위해 (입력한 데이터가 실수인지, 정수인지, 불린인지, 문자인지 컴퓨터가 식별해야 명령을 처리를 할 수 있다)
  • 변화하는 값은 어디에 할당이 되나? 변수라는 임의의 값을 저장할 수 있는 저장 공간에. → 변수에 할당이 된 값이 정수인지/실수인지/불린인지/문자인지를 식별하기 위해 기본자료형을 사용한다.

기본자료형은 어떻게 사용할까?

  • 변수에 저장 하려는 임의의 값이 기본자료형이라면,
    임의의 값이 기본자료형 중 어떤 데이터 타입인지 식별하기 위해 임의의 값이 저장된 변수 앞에 기본자료형을 써붙인다.
  • 예시
    • 변수 a에 할당 할 임의의 값이 10일 경우 기본자료형 중 정수에 해당하기 때문에
      byte a = 10; 
      short a = 10; 
      int a = 10; 
      long a = 10;
    • 변수 a에 할당할 임의의 값이 ‘A’인 경우 기본자료형 중 문자에 해당하기 때문에
      char a =A;
    • 변수 a에 할당할 임의의 값이 3.14인 경우 기본자료형 중 실수에 해당하기 때문에
      float a = 3.14;
      double a = 3.14;
    • 변수 a에 할당할 임의의 값이 true일 경우 기본자료형 중 불린에 해당하기 때문에
      boolean a = true;
  • 변수에 임의의 값을 할당하고, 기본자료형까지 선언이 완료되면 꼭 ‘;’을 붙여야 한다.

기본자료형은 데이터 값을 어떻게 식별하여 사용할 수 있을까?

  • Data Type이 ‘정수'인 경우

    기본자료형메모리의 크기메모리 안에서 표현/사용 가능한 범위
    byte1 byte-128 ~ 127
    short2 byte-32,768 ~ 32,767
    int4 byte-2,147,483,648 ~ 2,147,483,647
    long8 byte-9,223,372,036,854,775,808 ~ 9,223,372,036,854,775,807
  • 각 기본자료형이 포함할 수 있는 정수값의 범위 : byte < short < int < long

  • 여기서, 메모리(Memory)란?

    • 일반명사적 의미 : 기억
    • 고유명사적 의미 : 기억 장치에 들어갈 수 있는 데이터의 ‘최대량’을 나타내는 수치. (여기서 기억장치란? RAM과 HDD/SSD를 말함)
    • 메모리는 왜 사용할까?
      • 기억장치 내 데이터가 들어갈 최대량의 공간을 확보해야 하니까.
      • 데이터의 공간을 차지하기 위해 컴퓨터가 데이터의 크기를 알아야겠네.. 데이터의 크기는 어떻게 알 수 있을까? 기본자료형! 기본자료형을 통해 이 값이 어떤 기본형 자료인지를 판별하고 어느 정도의 메모리 크기를 필요로 하는지를 알리면, 기억 장치에서 ‘아 이 정도의 범위를 필요로 하는군!’하고 메모리 공간을 확보해 준다.
      • 그렇다면, 어떤 변수 a가 있다고 가정할 때
        int a = -2,147,483,648;
        int a = 2,147,483,647;
        위 두 경우 각각의 변수가 차지하는 메모리 크기는 4 byte로 동일하다. (예를 들면, 독서실 최대 정원이 30명인데 첫 번째 a의 경우 1명/30명인거고 두 번째 a의 경우 30명/30명인 것. 전체 용량은 30명으로 동일함)
  • Data Type이 ‘실수'인 경우

    기본자료형메모리의 크기메모리 안에서 표현/사용 가능한 범위
    float4 byte±(1.40129846432481707e-45 ~ 3.40282346638528860e+38)
    double8 byte±(4.94065645841246544e-324d ~ 1.79769313486231570e+308d)

    *** 여기서 e는 10을 밑으로 하는 지수를 말함. 10의 -45승, 10의 +38승

  • Data Type이 ‘문자'인 경우

    기본자료형메모리의 크기메모리 안에서 표현/사용 가능한 범위
    char2 byte유니코드 문자
  • Data Type이 ‘불린'인 경우

    기본자료형메모리의 크기메모리 안에서 표현/사용 가능한 범위
    boolean1 bytetrue, false
profile
FE developer

0개의 댓글