1.不同类型数据间的优先级关系如下:
byte,short,char —> int —> long > float >double
2.自动类型转换规则:
整型,浮点型,字符型数据可以混合运算,运算中,不同类型的数据先转换为同一类型,然后进行运算,转换从低级到高级,如
int num=3;
char c='a';
double d=5.5;
double sum=num+c+d;//先转换为double类型,其中'a'的ASICII码为97,所以转换为double后为97
System.out.println(sum);//最后将输出105.5
3.强制类型转换
高级数据类型转换成低级数据类型,需要用到强制类型转换,如:
double d=3.0;
int i=(int)d;//将double类型的变量中的double类型的数据转换为int类型,并赋给变量i,变量d本身的数据类型不变,所以最后输出变量d时会输出3.0
System.out.println(i+" "+d);//将输出 3 3.0
4.布尔类型的数据不能转换为其它任何的基本数据类型