Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- 기본
- Android
- 이클립스
- paint
- OGNL
- Menu
- 안드로이드
- 메서드
- Eclips
- JavaScript
- 국제화
- struts2
- Spring
- 예외처리
- 배열
- 어노테이션
- oracle
- layout
- 에러페이지
- 클래스
- Java
- 생성자
- mybatis
- HTML
- Graphic
- 메소드
- 오버로딩
- AWT
- JSP
- 전화걸기
Archives
- Today
- Total
note
자동형변환 명시적형변환 본문
public class CastEx {
public static void main(String[] args){
//====프로모션 (자동 형변환) ====//
//더 큰 자료형으로 승격이 일어나는 형태,
//정보의 손실이 전혀 없으며 자동적으로 발생
byte b1 = 127;
byte b2 = 127;
int b3 = b1 + b2; //32bit 미만의 자료형(byte)연산시
//32bit(int)로 승격
short s1 = 123;
short s2 = 123;
int s3 = s1 + s2; //32bit 미만의 자료형(byte)연산시
//32bit(int)로 승격
int in1 = 234;
long lg = in1; // int->long 자동 형변환
int in2 = 1234;
long lg2 = 234L;
long lg3 = in2 + lg2;
//int -> long 자동형변환
//==== 디모션(명시적(강제) 형변환) ====//
//더 작은 자료형으로 강등, 데이터의 손실이 있을 수 있음
//명시적(강제) 형변환
byte b4 = 127;
byte b5 = 127;
byte b6 = (byte)(b4 + b5);//int -> byte
//명시적 (강제) 형변환
System.out.println("b6 =" + b6); //데이터 손실이 일어남
short s4 = 123;
short s5 = 123;
short s6 = (short)(s4 + s5);//int -> short
//명시적 (강제)형변환
int in5 = 234;
float f5 = 123.5f;
int in6 = in5 + (int)f5;
//float -> int
System.out.println("in =" + in6);
//소수점이 날라감 반올림 반내림 없음
}
}
b6 =-2
in =357