1、长整型变量long
在为长整型变量long赋值时,如果未超过int类型范围,则不会出问题,如果超出int类型范围,则会出现编译问题
说明整型常量,即整数数据默认是int类型的,此时在整数后面加上L/l将int类型的整型数据转为long类型的整型数据就可以解决这个问题
2、如果整型数据默认是类型的话,将整型数据赋值给byte类型的变量是否会出现问题
byte类型变量标识了1个字节的内存空间,可以表示从-128到+127中所有的数
上述结果说明整型数据本身没有具体的数据类型,只有在赋值给long类型变量时有一个int类型数值范围的一个限制,必须通过加上L/l来突破这层限制,使得数值可取范围恢复正常
3、表达式类型自动提升
表达式是指由变量和运算符组成的一个算式,变量在表达式中进行运算时,可能会发生自动类型转换,这就是表达式数据类型的自动提升
例如byte类型的变量在运算期间会自动提升为int类型
原因是两个byte类型的变量在运算期间自动转为了int类型的变量来进行运算,等号两边变量类型不匹配造成了变量类型不兼容的错误,可以通过强制类型转换来解决这个问题