No. 01

 

 

데이터 타입(data type)


데이터 타입(자료형)이란 자바에서 다룰 수 있는 데이터의 종류를 말한다. 자료형은 크게 '기본형'과 '참조형' 두 가지로 나눌 수 있다.

기본형은 실제 값을 저장하고 참조형은 주소를 저장한다. 여기서 주소란 메모리 주소를 뜻한다.


▣ 기본형(primitive type)

논리형(boolean), 문자형(char), 정수형(byte,short,int,long), 실수형(float,double)


▣ 참조형(reference type)

8개의 기본형을 제외한 나머지 타입

실제 값이 아닌 메모리 주소가 저장된다는 것이 중요하다.




No. 02

 

 

기본형(primitive type)


기본형은 모두 8개의 종류가 있으며, 크게 논리형, 문자형, 정수형, 실수형으로 구분된다.


자료형

키워드

크기 

기본값 

표현 범위 

논리형

 boolean

 1byte 

 false 

 true 또는 false

문자형

 char

 2byte 

 \u0000

 0 ~ 65,535

정수형

 byte

 1byte 

 0

 -128 ~ 127

 short

 2byte

 0

 -32,768 ~ 32,767

 int

 4byte

 0

 -2,147,483,648 ~ 2,147,483,647

 long

 8byte

 0

 -9,223,372,036,854,775,808

 ~ 9,223,372,036,854,775,807

실수형

 float

 4byte

 0.0

 -3.4E38 ~ 3.4E38 (소수 7자리 까지 표현)

 double

 8byte

 0.0

 -1.7E308 ~ 1.7E308 (소수 15자리 까지 표현)


▣ 논리형

boolean은 true와 false 두 가지 값만 표현할 수 있다. 즉, 참 또는 거짓만 표현 가능하며 조건식과 논리적 계산에 사용된다.

주의할 것은 대소문자가 구별되기 때문에 true와 false만 값으로 가질수 있다. 예를 들어 TRUE 또는 False 등은 다른것으로 간주된다.

boolean a = TRUE; //[x], 에러가 난다. 

boolean b = true; //[o]



▣ 문자형

char는 문자를 저장하는데 사용되며 변수에 하나의 문자만 저장할 수 있다.

문자를 저장할 때는 작은따옴표(')로 반드시 문자를 감싸줘야 한다. 문자를 감싸지 않으면 변수명으로 인식한다.

char a = c     //[x], 에러가 난다. c라는 변수로 인식하는데 c라는 변수를 선언하지 않았다.

char b = 'c';   //[o], 작은 따옴표로 감싸주어야 한다.

// 변수 b를 알파벳 소문자 c로 초기화 한 것이다.

char b = 'ac'; //[x], 에러가 난다. 두개의 문자는 저장이 안된다.



▣ 정수형

byte,short,int,long 4가지 타입으로 표현되며, 사용하고자 하는 값의 범위에 따라 적절한 타입을 선택하면 된다.

같은 음식을 담을 수 있는 크기가 다른 그릇 4개라고 생각하면 쉽다. 일반적으로 정수를 저장할 때는 int를 많이 사용한다.


▣ 실수형

float,double 2가지 타입으로 표현되며, 마찬가지로 사용하고자 하는 값의 범위에 따라 적절한 타입을 선택하면 된다.

일반적으로 실수를 저장할 때는 double를 많이 사용한다.


※ 변수를 초기화 하거나 값을 대입할 때 선언한 변수 타입에 맞지 않으면 에러가 발생한다.




No. 03

 

 

정수와 실수형의 표현


정수형과 실수형은 여러 타입이 존재하므로 타입을 구분해주기 위해서 값에 접미사를 붙여 주어야 한다.


▣ 정수형의 표현

byte,short,int형 일때는 범위에 맞는 값만 저장하면 문제되지 않으며 long형 일 때만 접미사 'l'또는 'L'을 붙여준다.

예를 들어 int형의 최대값인 2,147,483,647보다 큰 값을 long형에 저장할 때는 접미사 'l'또는 'L'을 반드시 붙여줘야 한다.

중요) 자바에서 접미사를 붙이지 않은 정수값은 int형으로 간주한다.


int i = 2,147,486,648; //[x], 이경우는 값의 범위를 벗어났기 때문에 에러가 난다. 

long l = 2,147,486,648; //[x], 이경우는 접미사를 붙이지 않았기 때문에 에러가 난다.

long a = 2,147,486,648L; //[o], 이와 같이 접미사 'l'또는 'L'을 붙여줘야 한다.
long b = 23;//[x], 값의 범위 이지만 정수 23을 int형으로 간주하여 long형에 저장 못한다.



▣ 실수형의 표현

실수형의 경우는 float형 일 때 접미사 'f' 또는 'F'을 붙여준다.

중요) 자바에서 접미사를 붙이지 않은 실수값은 double형으로 간주한다.

float f = 4.5; //[x], 이경우는 접미사를 붙이지 않았기 때문에 에러가 난다.

//실수 4.5를 double형으로 간주하여 float형에 저장 못한다.

float c =4.5f; //[o], 이와 같이 접미사 'f또는 'F'을 붙여줘야 한다.




No. 04

 

 

상수(constant)


상수(constant)는 변수와 마찬가지로 값을 저장할 수 있는 공간이지만 변수와 달리 프로그램 실행 중에 값이 바뀔 수 없다.

상수를 선언할 때는 반드시 값을 초기화하여야 한다. 한 번 초기화된 다음에 상수 값은 변경할 수 없다.


상수를 만드는 방법은 변수 선언 시 변수의 타입 앞에 final 키워드를 붙여주면 된다.



상수의 이름은 모두 대문자로 하는 것이 암묵적인 약속이며, 여러 단어로 이루어져 있는 경우 '_'로 구분한다.


값이 항상 일정해야 하는 경우 상수로 선언하여 사용하는 것이 좋다.


final double PI; //[x], 상수는 선언과 동시에 초기화하여야 한다.

final double PI = 3.141592; //[o]

PI = 5.141592; //[x], 상수의 값은 변경될 수 없다.


위와 같이 원주율을 나타내는 π 값은 항상 일정해야 원의 면적등을 구할 때 정확한 값을 구할 수 있다.

개발자는 PI라는 상수이름으로 3.141592라는 값을 저장하였고 앞으로 원의 면적등을 구할 때 3.141592라는 값 대신 PI라는 상수 이름으로 대신할 수 있다. 더 알아보기 쉽고 값을 외우지않고 PI라는 것만 알면되기 때문에 프로그램하기 매우 용이하다.

또한 프로그램 중간에 값을 바꾸지 못하도록 예방하는 역할도 있다.





'JAVA' 카테고리의 다른 글

[Java 08] 문자열 - String  (1) 2017.11.18
[Java 07] 문자형 - char  (0) 2017.11.18
[Java 05] 변수와 식별자  (1) 2017.11.13
[Java 04] 자바 프로그램의 구조  (1) 2017.11.12
[Java 03] 이클립스(eclipse) 기본 사용법  (0) 2017.11.12

+ Recent posts