把一个表示数据范围小的数值或者变量赋值给另一个表示数据范围大的变量。这种转换方式是自动的,直接书写即可。
类型从小到大关系图:
以下是几个例子:
int a = 105; double b = a; // 105.0
整数默认是int类型,byte、short、char类型数据参与运算均会自动转换为int类型。
byte a = 10, b = 20; byte c = a + b; // 会报错
第三行代码会报错,a和b会自动转换为int类型,计算结果为int,int赋值给byte需要强制转换。
修改为:
byte a = 10, b = 20; byte c = (byte)(a + b); // 或者 byte a = 10, b = 20; int c = a + b;
boolean类型不能与其他基本数据类型相互转换。
把一个表示数据范围大的数值或者变量赋值给另一个表示数据范围小的变量。
目标数据类型 变量名 = (目标数据类型)值或者变量;
double a = 56.8; int b = (int)a; // 56
原文:https://www.cnblogs.com/xulinjun/p/14664523.html