자료형이란?
프로그래밍을 할 때 사용하는 숫자, 문자열 등의 다양한 데이터 형태를 식별하는 분류
프로그램의 가장 기본이자 핵심적인 단위
변수를 어떻게 사용할 것인지 컴파일러나 인터프리터에 알려주기 위한 변수의 속성
데이터에 대해 수행할 수 있는 작업과 저장할 수 있는 값 유형을 정의
자료형의 구분
기본 자료형 (primitive data type) : 프로그램이 실행될 때 인식할 수 있도록 이미 컴파일러에 하드코딩 되어 있음.
ex) int, float 등
객체 자료형 (non-primitive data type) : 사용자가 정의한 특수 유형의 데이터, 프로그램에 해당 정의가 포함
ex) String, 배열, 클래스, 인터페이스 등
정수 자료형
소수 부분이 없고 음숫값을 허용하는 숫자
유형 | 기본 값 | 저장 공간 | 범위 |
byte | 0 | 1바이트 | -128 ~ 127 |
short | 0 | 2바이트 | -32,768 ~ 32,767 |
int | 0 | 4바이트 | -2,147,483,648 ~ 2,147,483,647 |
long | 0L | 8바이트 | -9,223,372,036,854,775,808 ~ 9,223,372,036,854,775,807 |
1 byte = 8bits
1bits에는 2개의 숫자를 저장할 수 있음(0,1)
2bits에는 4개의 숫자를 저장할 수 있음 (00, 01, 10, 11)
nbits에는 2^n개의 숫자를 저장할 수 있음
byte
가장 작은 정수형
메모리 절약이 중요한 대용량 배열에서 메모리를 절약하는 데 유용
short
부호가 있는 16비트 정수형
byte자료형과 마찬가지로 메모리 절약이 중요한 경우에 short 자료형을 사용하여 대용량 배열의 메모리를 절약 할 수 있음.
int
가장 일반적으로 사용되는 자료형
루프를 제어하고, 배열을 인덱싱(색인)하는데 주로 사용
더 넓은 범위의 값이 필요할 때는 int대신 long을 사용
long
int자료형이 충분히 크지않은 경우에 사용
int범위 안에 들어온다면 L를 붙이지 않아도 에러가 발생하지 않지만, int범위를 초과하는 값이 들어갈 경우 맨 뒤에 L이 없다면 컴파일 에러가 발생
왜 메모리를 절약하는데 유용할까?
실수 자료형
소수 부분이 있고 음숫값을 허용하는 숫자
유형 | 기본값 | 저장공간 | 대략적인 범위 |
float | 0.0f | 4바이트 | 1.4e-045 ~ 3.4e+038 |
double | 0.0d | 8바이트 | 4.9e-324 ~ 1.8e+038 |
float
부동 소수점 숫자로, 이자율이나 제곱근 계산과 같이 분수의 정밀도가 필요한 표현식에 사용 됨
연산 속도를 향상하고 메모리를 절약해야 하는 경우에 사용
float 자료형으로 변수를 선언하고 초기화 할 때는 값의 끝에'f'를 붙여야 함
double
부동 소수점 숫자로 sin(), cos(),sqrt()와 같은 수학 계산에 사용 됨
double 자료형으로 변수를 선언하고 초기화 할 때는 초기화 값의 끝에 'd'를 붙이거나 생략할수 있음
문자 자료형
문자와 숫자등 문자 집합의 기호를 나타내는데 사용
유형 | 기본값 | 저장공간 | 범위 |
char | '0' | 2바이트 | \u0000(0)~\uffff(65,535) |
char
변수에 하나의 문자를 저장할 때 사용
작은 따옴표로 값을 묶에 표현
'A'와 "A"는 다름
문자열 자료형
문자열을 저장하는데 사용
String
문자와 숫자 등 문자 집합의 기호를 나타내는데 사용
큰 따옴표로 값을 묶에 표현
클래스에 해당하므로 반드시 대문자로 시작해야 함
불리언 자료형
boolean
ture, false 뿐
if, while과 같은 제어문을 제어하는 조건식에 사용
'Java' 카테고리의 다른 글
[Spring Boot] 스프링 부트 mustache 한글 깨짐 (0) | 2023.06.14 |
---|---|
Java 기초 문법 정리[변수] (0) | 2023.04.04 |