容量大小:指的是表示数的范围的大和小(和内存无关)。
char ↘↘ byte ➡ int ➡ long ➡ float ➡ double short ↗↗
byte,short,char之间不会相互转化,他们三者在计算时先转化为int类型。
(资料图)
boolean类型不能与其他类型进行转化。
当把任何基本数据类型的值和字符串(String)进行连接运算时(+),会自动转化成String类型。
从大容量转到小容量数据类型:不兼容类型,从大容量数据类型转化到小容量数据类型可能会有损失。
相同容量之间的数据类型也不可以转化:不兼容类型,数据会损失。
结论:
小的容量类型和大的容量类型进行运算时(小到大可以自动转化),结果会自动提升为大的容量类型
byte,short,char之间不会相互转化,他们三者在计算时先转化为int类型,所以结果也为int型。
例如1:char类型和int类型做运算
char a='a';//a的值是97; int b=3; System.out.println(a+b);//答案是100;