自动类型转换
类型范围小的变量直接转换为类型范围大的变量
byte a = 10;
int b = a;
表达式的类型转换
类型范围小的变量转换为表达式中类型范围大的类型,再进行计算
- 最终的接收变量类型由表达式的最大的类型范围决定
byte a = 10;
int b = 20;
long c = 30;
long res = a + b +c;
- byte、short、char在表达式中会转换为int类型进行计算
byte i = 20;
short j = 30;
int res = i + j
强制类型转换
类型范围大的变量转换为类型范围小的变量
int a = 20;
byte b = (byte)a;
强制类型转换会导致数据丢失
浮点型转换为整型,丢失小数部分,保留整数部分