数据类型转换:分为自动类型转换和强制类型转换
数据类型的转换优先级是:double>float>long>int>byte,short,char
所以你这里是优先级高的int类型转换为优先级低的byte类型,需要进行显示类型转换,也就是强制转换。
赋值运算分为2种:
1,等号右边全是由常量和运算符组成的表达式:因为都是常量,所以虚拟机在编译期就能知道表达式的结果,并判断结果是否在被赋值的变量的类型范围内,如果在则直接赋值,如果不在则需要强制转换。
2,等号右边有变量参与运算:如果参与运算的变量是byte、short、char,它们会先转变为int类型,再参与运算,类型总是会提升。
希望对你有帮助!{:soso_e141:} |