백엔드/java

1 자바 기본 자료형

ssoyul 2023. 2. 8. 20:53

 

  정수형 실수형 문자형 논리형
1바이트 byte     boolean
2바이트 short   char  
4바이트 int float    
8바이트 long double    

 

1. 정수형: 숫자를 담는 자료형

  값의 범위 사용
byte -2^7 ~ 2^7-1 1byte 단위의 동영상, 실행 파일의 자료 처리 시
short -2^15 ~ 2^15-1 2bytes단위의 자료형
c, c++언어와 호환 시
int -2^31 ~ 2^31-1  4bytes 단위의 자료형
자바에서 사용하는 정수형의 기본형
long -2^63 ~ 2^63-1 8bytes 단위의 자료형
항상 숫자 뒤에 알파벳 L/l을 입력해 long형임을 표시
int num = 5;
long count = 14L;

 

2. 실수형:

  값의 범위 사용
float 소수점 아래 9번째 자리에서 반올림하여 8자리까지 표시 숫자 뒤에 알파벳 F/f를 입력해 float형임을 표시
double 소수점 아래 18번째 자리에서 반올림하여 17자리까지 표시 자바에서 사용하는 실수형의 기본형
float score = 83.8F;
double weight = 57.723;

 

정수형, 실수형의 형변환
정수 ▶ 실수 소수점이 묵시적으로 추가됨
실수 ▶ 정수 소수점이 제거되어 형변환 일어남

 

정수 ▶ 실수: 자동(묵시적) 형 변환. int가 double에 들어감

int i = 5;
double j = 54.1;
double result = i+j;

result => 59.1

 

실수 ▶ 정수: 소수점 이하 값은 버려지며 반올림은 발생하지 않음. 값의 유실이 있을 수 있음 (강제, 명시적 형 변환)

int i = 5;
double j = 54.11432;
int result = i+ (int)j;

result => 59

* 저장 가능한 값의 범위를 벗어나면 에러 발생 -> 명시적 형 변환을 해준다.

 

 

3. 문자형

 

char: 한 개의 문자 값에 대한 자료형

         문자, 아스키 코드, 유니코드로 표현

char ch1 = 'q'; 	//문자
char ch2 = 97;		//아스키 코드
char ch3 = '\u0061';	//유니코드

세 개 모두 a를 출력한다

 

4. 논리형

 

boolean: 참과 거짓으로 나타남. true(1) / false(0)

               값이 존재하는지, 배열이 비었는지, 결과가 참 또는 거짓인지 등을 표현하고자 할 때 사용