본문 바로가기

개발 이야기/Java

04. Java의 변수타입과 그 종류

- 변수의 타입

기본형(Primitive Type)

: 변수의 값을 가짐

문자: char(한글자)

숫자: 정수 - 자연수 byte, short, int, long

       실수 - 부동소수점 float, double

논리: boolean

참조형(Reference Type)

: 변수의 메모리 주소를 가짐

: 초기화 되지 않은 참조현 변수는 null을 가진다.

: String, Integer는 참조형 타입이지만 메모리 주소를 가지지 않고, 값만 가진다.

기본형(Primitive Type)을 제외한 나머지 모두

예)Scanner, ArrayList, String, Integer, HashMap..

 

종류       설명              저장 공간    값의 범위 (최소값~최대값)
============================================================================
boolean    논리값            1 bit        true / false
--------------------------------------------------------------------------------------
byte       부호 있는 정수    8 bits       -128 ~ 127
--------------------------------------------------------------------------------------
char       유니코드 문자     16 bits      \u0000 ~ \uFFFF
--------------------------------------------------------------------------------------
short      부호 있는 정수    16 bits      -32768 ~ 32767
--------------------------------------------------------------------------------------
int        부호 있는 정수    32 bits      -2147483648 ~ 2147483647

* 20억쯤 넘어가면 long 쓰는게 편하다. 
--------------------------------------------------------------------------------------
long       부호 있는 정수    64 bits      -9223372036854775808 ~ 9223372036854775807
--------------------------------------------------------------------------------------
float      IEEE 754 실수     32 bits      1.40239846E-45f
                                          ~ (표현 가능 양수 범위)
                                          3.40282347E+38f
--------------------------------------------------------------------------------------
double  IEEE 754 실수     64 bits   4.94065645841246544E-324
                                          ~ (표현 가능 양수 범위)
                                          1.79769313486231570E+308
--------------------------------------------------------------------------------------

- C와는 달리, 자바의 데이터 타입은 기계/운영체제의 종류에 상관없이 항상 일정

- 자바에서 long 은 항상 64비트 정수

- 실수는 double형이 기본/ float형 상수(literal)를 정의하려면, 0.123f 이런 식으로 뒤에 f 또는 F를 붙여야 함
- long 형을 초과하는 거대 정수 다루는 BigInteger 클래스

 : 가끔씩 알고리즘 문제에 나올 때가 있으므로 알아두어야 함

 : 참고 https://linuxism.ustd.ip.or.kr/1523

 

 

 

출처: https://linuxism.ustd.ip.or.kr/1523

 

정리되면 재포스팅 해야지

 

'개발 이야기 > Java' 카테고리의 다른 글

tip) Map 초기화 하기  (0) 2019.11.21
03. JSP Vs Javascript  (0) 2018.07.11
02. OOP(Object Oriented Programming)  (0) 2018.07.11
Try ~Catch 문과 Exception처리  (0) 2018.06.28
Tip) [SimpleDateFormat] String ↔ Date  (0) 2016.10.13