상세 컨텐츠

본문 제목

#02. JAVA_자료형과 캐스팅

코딩 공부/JAVA

by 코딩연습중 2022. 6. 29. 01:50

본문

 자료형이란 변수에 저장할 값의 종류를 의미한다고 생각하면 쉽다. 자료형에 대해 자세히 설명하기 전에 변수란, 특정값을 저장하기 위한 공간이다. 변수를 선언할 때는 자료형 변수명; 이러한 방법을 이용한다. 생성된 변수에 처음으로 값을 대입하는 것을 초기화라고 하는데 초기화는 변수명 = 값; 이런 식으로 한다. 변수 선언과 초기화를 한 번에 할 수 있는데 이는 다음과 같다.

자료형 변수명 = 값;

 자바에서 자료형의 종류는 총 8가지이다.

논리형 boolean 1bit
문자형 char 2byte(1byte = 8bit)
정수형 byte 1byte
  short 2byte
  int 4byte
  long 8byte
실수형 float 4.n byte
  double 8.n byte

변수명은 마음대로 만들 수 있지만 몇 가지 규칙이 있다. 

1) 변수명은 숫자로 시작할 수 없다.

2) _를 제외하고 특수문자를 포함할 수 없다.

3) 변수명은 반드시 소문자로 시작한다.

 

논리형(boolean)은 참, 거짓의 데이터를 저장하는 자료형이다. 

문자형은 작은 따옴표 안에 한 글자만 저장할 수 있는 자료형이다.

정수, 실수형은 각각 정수와 실수(소수점을 포함하는 값)를 저장할 수 있는 자료형이다.

정수형, 실수형에서 바이트 크기가 클 수록 대입할 수 있는 값의 크기도 커진다.

 

변수를 선언하고 초기화하는 몇 가지 예를 들면 아래와 같다.

public static void main(String[] args){
	boolean bo = true; //논리형
    	char ch = 'A'; //문자형
    	char ch02 = 65+1; //***아스키코드값을 참고해 숫자를 문자로 바꿈
    	int n = 111;
    	long lo = 2000L; //long을 사용할 때는 ;앞에 L을  써줘야함
    	float f = 0.1f; //float을 사용할 때는 ;앞에 f을 써줘야함
    	double d = 0.2;
        }

 

 캐스팅의 종류는 총 두 가지인데, 프로모션 캐스팅(promotion casting)과 디모션 캐스팅(demotion casting)으로 나뉜다.

promotion casting

 프로모션 캐스팅은 큰 자료형에 작은 자료형을 대입하는 것으로, 자동으로 일어난다. 예를 들면 아래와 같다.

public static void main(String[] args) {
		
		double d = 100.5; //8byte
		int n = 200; //4byte
		d = n;
		System.out.println("d : " + d); //출력값은 200이다.
        }

 

demotion casting

 디모션 캐스팅은 작은 자료형에 큰 자료형을 대입하는 것으로, 자동으로 일어나지 않는다. 따라서 디모션 캐스팅은 아래와 같은 방식으로 한다.

public static void main(String[] args) {
		
		float f = 5.5f;
		int n = 3;
		n = (int)f; // 디모션 캐스팅의 방법
		System.out.println(n); //출력값은 5
	}

 위의 코드를 봤을 때, n 에 f 값을 대입했는데 왜 출력 결과는 5가 나오는 것인지 의문을 가질 것이다. 디모션 캐스팅의 단점은 바로 값이 손상될 수 있다는 것이다. 이 점을 주의하여 캐스팅을 해야 한다. 

'코딩 공부 > JAVA' 카테고리의 다른 글

#06.JAVA_반복문(for, while) / break, continue  (0) 2022.07.06
#05.JAVA_제어문 (switch문)  (0) 2022.07.02
#04. JAVA_제어문 (if문)  (0) 2022.07.01
#03. JAVA_연산자  (0) 2022.06.30
#01. JAVA_Eclipse압축파일 다운 및 JAVA기초  (0) 2022.06.28

관련글 더보기