데이터 타입이란
데이터 타입이란 변수에 저장할 값의 유형이다.
데이터 타입은 기본 타입(primitive type)과 참조 타입(reference type)으로 나뉜다.
기본 타입이란 리터럴, 즉 값을 직접 저장하는 타입을 말한다.
기본 타입은 정수, 실수, 문자, 논리로 나뉜다.
참조 타입의 유형은 여러 가지가 있지만 추후 다른 글에서 설명하도록 하고,
현재 알아둘 것은 문자열 타입이다.
문자열 타입(String)은 큰따옴표 안에 묶여 표현된 한 글자 이상의 문자를 말한다.
기본 타입
메모리에는 0과 1을 저장하는 최소 기억 단위인 비트가 있다.
8개의 비트를 묶어서 바이트라고 한다.
바이트 크기가 클수록 표현 값의 범위가 크다.
기본 타입 - 정수
기본 타입 중 정수 타입은 byte, char, short, int, long으로 나뉜다.
기본 타입에서 각 타입의 표현 범위를 초과하는 값을 입력할 경우, 컴파일 에러가 발생한다.
만약 프로그램 실행 중 변경된 변수 값이 그 타입의 표현 범위를 초과한 경우,
그 타입의 최소값부터 다시 반복되어 저장된다. 이를 쓰레기값이라고 한다.
기본 타입 - 정수 - char
정수 타입의 한 종류인 char 타입에 대해 자세히 알아보자.
자바는 모든 문자를 유니코드로 처리한다.
유니코드는 모든 문자에 하나의 코드를 부여하며, 음수가 없다.
char는 문자 한 글자만을 저장할 수 있다.
저장하는 방법은 두 가지다.
1.작은따옴표 안에 문자 입력
2.유니코드 정수값 입력
1의 경우 작은따옴표 안에 아무것도 입력하지 않을 경우 오류가 난다.
2의 경우 유니코드에 음수가 없기 때문에 음수 저장은 불가하다.
각 문자의 유니코드를 알아내려면 char 타입 변수를 int 타입 변수에 저장한 후 해당 int 변수를 출력하면 된다.
기본 타입 - 정수 - int
정수 타입 중 int 타입은 자바의 기본 정수 연산 타입이다.
byte/short 타입 변수끼리 연산하면 int 타입으로 자동 변환 후 연산이 되고,
결과 역시 int 타입으로 출력된다.
따라서 자바에서는 정수 저장 시 일반적으로 int 타입을 사용한다.
기본 타입 - 정수 - long
정수 타입 중 long 타입은 수치가 큰 데이터를 다루는 프로그램에 주로 사용한다.
long 타입 변수 초기화 시 값 뒤에 L을 붙이지 않으면 컴파일 에러가 발생한다.
기본 타입 - 실수
기본 타입 중 실수 타입은 float, double로 나뉜다.
자바는 기본 실수 연산 타입으로 double을 사용한다.
double이 float보다 훨씬 정밀한 값을 저장할 수 있기 때문이다.
따라서 변수에 float 타입 초기화 시 값 뒤에 f/F를 붙여주지 않으면 컴파일 에러가 난다.
기본 타입 - 논리
논리 타입은 boolean 타입이라고 한다.
true, false 두 가지의 값을 가지고 있으며 주로 조건문/제어문에 사용된다.
참고 도서 : 이것이 자바다(신용권 저)