Java作为一个强类型编程语言,当不同类型之间的变量相互赋值时,会有较严格的校验
1.int和long/double相互赋值
(1)int和long相互赋值
(2)int和double相互赋值
结论:long/double表示的范围更大,可以将int赋值给long/double,但是不能将long/double赋值给int
2.int和boolean相互赋值
结论:int和boolean不能相互赋值
3.int字面值常量给byte赋值
注意:byte表示的数据范围是-128~127,若数据范围在-128~127之间,则可以进行int字面值给byte赋值
小结:1.不同数值类型的变量之间赋值,表示范围更小的类型能隐式转换成范围较大的类型
2.将范围大的类型赋值给范围小的类型时,需要强制类型转换,但可能精度丢失
3.将一个字面值常量进行赋值时,Java会自动针对数字范围进行检查