○ 자료형 형변환
1. 자동(묵시적) 형변환
큰기억장소 = 작은기억장소 ;
2. 강제(명시적) 형변환
작은기억장소 = (작게)큰기억장소 ;
○ 기본 데이터 타입별 크기
정수형 byte(1), short(2), int(4), long(8)
실수형 float(4), double(8)
같은 정수형 또는 같은 실수형끼리는 바이트크기를 기준으로 형변환됨.
정수형과 실수형 사이에 변환에서는 실수형이 무조건 정수형보다 큼(바이트 크기에 상관없음!)
○ 예제소스
double a; // 실수형 변수 a
a = 7; // double형 = int형 [자동형변환]
System.out.println("a=" + a); //7.0
int b;
b = (int)3.4; // int형 = double형; [강제형변환]
System.out.println("b=" + b); //3
int c;
c = 'A'; // int형 = char형 [자동형변환]
System.out.println("c="+c); //65
// int형보다 작은 정수형에 대입할때만 예외적으로 값의 크기를 확인함
byte bb; // -128 ~ +127
bb = 127;
bb = (byte)128; // byte형 = int형
System.out.println("bb="+bb); // -128
char ch;
ch = 65; // char형 = int형
System.out.println("ch=" + ch); // A
ch = 'a';
System.out.printf("%c => %d\n", ch, (int )ch);
ch = '0';
System.out.printf("%c => %d\n", ch, (int)ch);
float f = (float) 2.7; // float형 = double형
System.out.println("f=" + f);
// 실수는 항상 정수보다 큼. 바이트 크기에 상관없음.
float ff = 20_000_000_000L; // float형 = long형
System.out.println("ff=" + ff);
'IT > Java' 카테고리의 다른 글
자바 연산자 종류(단항, 산술, 비교, 논리, 삼항(조건), 대입)와 연산 후 결과 데이터형 (0) | 2018.07.09 |
---|---|
자바 사용자 입력값 입력받기. Scanner 클래스 사용 (0) | 2018.07.09 |
자바 출력 명령어 종류 (println, print, printf) (0) | 2018.07.08 |
자바의 데이터 타입 및 변수 선언 방법 (0) | 2018.07.08 |
이클립스에서 자주 사용하는 단축키 (0) | 2018.07.08 |