什么是表达式的自动类型转换?
类型范围小的变量和类型范围大的变量运算,他会自动转换成类型范围大的变量来进行计算
比如:
byte a = 10;
int b = 20;
double c = 30.6;
//byte d = a + b + c; // 会报错 需要用double来接收 因为里面double的范围最大
//int e = a + b + c; // 会报错 需要用double来接收 因为里面double的范围最大
double f = a + b + c; // 60.6
注意:如果是byte和short一起,他会以int进行运算
byte a = 10;
byte b = 20;
// 需要使用int来接收,不然会报错
int c = a + b;
进阶:强制转换数据类型
补充:
java在运算整数型时,会默认以int进行运算
运算浮点型时,会默认以double进行运算