[Java] Data type

SeongWon Oh·2021년 8월 13일
0

Java

목록 보기
3/39
post-thumbnail

Primitive Data type

Byte

  • 1byte(=8bit)단위의 동영상, 음악파일, 실행파일의 자료를 처리할 때 사용

short

  • 2byte단위의 자료형으로 C/C++과 호환을 할때 사용한다.

int

  • Java에서 사용하는 정수의 기본형이다
  • 4byte 자료형
  • Int a = 10에서 10과 같이 프로그래에서 사용하는 모든 숫자는 리터럴이라고 하며 해당 숫자들은 메모리 어딘가에 저장이 되어있고 그 수를 불러와서 복사하는 식으로 운영된다.
    (리터럴은 항상 기본적으로 4byte로 구성된다.)

Long

  • 8byte의 자료형
  • 32bit를 초과하는 숫자들은 long자료형으로 처리한다.
  • long type의 수를 할당하기 위해서는 뒤에 L또는 l을 붙여줘야한다.
int num = 12345678900; // 오류 
long lnum = 12345678900; 
//오류 -> 리터럴은 4byte로 되어있어서 long type변수에 넣어도 오류가 발생한다. 
//그래서 아래의 코드처럼 L을 붙여서 long형으로 들어가도록 해야한다.
long lnumber = 12345678900L; // ok

Double, Float

  • Float: 4byte
  • Double: 8byte
  • 실수의 리터럴의 경우는 Double형태로 저장이 되어 있다. 그래서 double 변수에 저장을 할때는 바로 지정을 하면 되지만 Float타입의 변수에 저장을 할 때는 위의 Long type처럼 F, f를 붙여줘야한다.
float fnum = 3.14 //오류발생! 실수는 기본적으로 double타입이라서 F나 f를 붙여줘야 함
float fnum = 3.14f //ok
  • 또한 부동 소수점의 경우는 지수쪽이 0을 표현할 수 없기에 약간의 오차가 발생한다

Char

  • 2byte의 자료형으로 문자를 위한 데이터 타입이다.
    char ch = 'A';
  • 'A'와 "A"의 차이점:
    'A'는 2byte로 하나의 문자로 인식, 반면에 "A"는 문자열로 인식한다.
  • 문자는 UNICODE 표준을 따라 컴퓨터 내부적으로는 숫자로 표현되므로 숫자를 char타입의 변수에 넣어줘도 문자가 출력될 수 있다. (양수만 가능)
// Char type변수에 숫자를 넣었을 때 문자가 나오는 예시
char ch = 65
System.out.println(ch) //결과는 A

Boolean

  • 1Byte 크기의 자료형이다.
  • True/False 두가지 값만 가질 수 있다.
  • 값이 존재유무, 결과가 참 거짓인지 표현할 때 사용한다.

지역 변수를 자료형 없이 사용하기 (var)

  • 자바 10버전 이후 지원
  • Local variable type inference
  • 값을 보고 data type이 무엇인지 추론 가능한 변수들은 자료형을 선언하지 않을 수도 있다.
  • 한번 선언한 변수에는 같은 타입의 값만 대입 가능하고 다른 타입의 값은 대입할 수 없다.
  • 지역 변수만 사용 가능하다.
var i = 10;  //i의 타입은 int로 추론됨
var j = 10.0;  //j의 타입은 double로 추론됨
var str = "hello"; //str의 타입은 String으로 추론됨



Reference

  • [Fast Campas] 한번에 끝내는 Java/Spring 웹 개발 마스터 초격차 패키지 Online.
profile
블로그 이전했습니다. -> https://seongwon.dev/

0개의 댓글