1、自动(隐式)数据类型转换:将取值范围小的类型自动提升为取值范围大的类型 。byte、short、char 运算时直接提升为 int 。boolean类型不能发生数据类型转换。整型数据类型默认是int类型。浮点型数据类型默认是double类型。byte、short、char‐‐>int‐‐>long‐‐>float‐‐>double。
(1)
①int类型和byte类型运算,结果是int类型,byte类型自动提升为int类型。
int a = 1; byte b = 2;
// byte x = a + b; // 报错,byte类型装不下int类型
int y = a + b; //int+byte-->int+int-->int
System.out.println(y);//3
②int类型和double类型运算,结果是double类型,int类型会提升为double类型 。
int i = 1; double d = 2.5;
//int e =d+i; //报错,int类型装不下double类型
double e = d+i; //int+double-->double+double-->double
System.out.println(e); //3.5