티스토리 뷰

📌 자료형

✔ 값의 종류에 따라 값이 저장될 공간의 크기와 저장 형식을 정의한 것

 

1. 기본형과 참조형

✔  기본형 : 실제 값을 저장

✔  참조형 : 어떤 값이 저장되어 있는 메모리 주소를 값으로 저장

✔  자바는 C언어와 달리 참조형 변수 간의 연산을 할 수 없으므로, 실제 연산에 사용되는 것은 모두 기본형 변수.

✔  앞서 변수를 선언하는 방식은 기본형을 사용한 방식이므로, 참조형 변수의 선언에 대해 살펴보자

클래스이름 변수이름; 

✔  기본형이 아닌 자료형은 모두 참조형이므로, 클래스명 또한 참조형에 속한다.

✔  즉, 새로운 클래스의 작성은 새로운 참조형을 추가하는 셈이다. 참조형의 초기화는 아래와 같다

Scanner sc = new Scanner(System in);

✔  자료형이 기본형이 아니므로, 이는 참조형 변수이다.

✔  Scanner 클래스 타입의 sc 라는 이름을 가진 참조형 변수. 참조형 변수는 메모리 주소로 초기화해야한다.

✔  우항에서 new 연산자를 사용, Scanner 클래스 타입의 객체를 생성하여 주소를 가져와 참조형 변수를 초기화.

 

2. 기본형 (primitive type)

자료형 기본값   bit byte
논리형 boolean false    false, true 1 -
문자형 char '\u0000'    '\u0000' ~ '\ufff' 16 2
정수형 byte

0


   -128 ~ 0 ~ 127  8 1
short    -32,768 ~ 0 ~ 32,767 16 2
int    -2,147,483,648 ~ 0 ~ 2,147,483,647 32 4
long    -9,223,372,036,854,775,808 ~ 0 ~ 9,223,372,036,854,775,807 64 8
실수형 float 0.0

   1.4E-45 ~ 3.4E38 32 4
double    4.9E-324 ~ 1.8E308 64 8

✔  논리형 : 다른 기본형과 연산 불가능 (논리형을 제외한 기본형끼리는 모두 연산 가능)

✔  문자형 : 문자를 유니코드로 저장하므로, 정수형이나 실수형과 연산도 가능하다. (C언어는 아스키코드를 사용하므로 1bit)

✔  정수형 : CPU가 가장 효율적으로 처리할 수 있는 int를 많이 사용. 메모리 절약을 우선시한다면 byte나 short를 사용하자. (default 는 int)

✔  실수형 : 실수형은 소수점을 표현하기 때문에 오차가 발생할 수 있다. 그래서 정밀도가 중요하다. (default는 double)

 

실수 자료형 정밀도 bit byte
float 7 자리 32 4
double 15 자리 64 8

✔  정밀도 : 10진수를 기준으로 n자리 수를 오차 없이 표현할 수 있다는 뜻. 정밀도가 높을수록 오차 발생 범위가 줄어든다.

✔  보다 높은 정밀도가 필요한 실수의 경우 double을 사용하자

 

 

 

 

[참고] 자바의 정석

'BackEnd > JAVA' 카테고리의 다른 글

[Ch.03] 1. 연산자  (0) 2021.02.28
[Ch.02] 형식화 출력 함수 printf() / 형변환  (1) 2021.02.20
[Ch.02] 상수와 리터럴  (0) 2021.02.20
[Ch.02] 변수의 선언과 초기화  (0) 2021.02.20
[Ch.00] JAVA 스터디 시작 + 매 주 후기  (0) 2021.02.18
댓글
«   2024/12   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31
최근에 올라온 글
글 보관함
Total
Today
Yesterday