下面代码报错:
byte x; byte x1=1; byte x2=2; x=x1+x2;
原因:
(1)直接常量与变量不同,直接常量以及由直接常量组成的表达式只要值的范围符合,就可以直接赋给变量。
(2)但上述代码中x1和x2都是byte类型的变量,Java为了防止溢出,会自动把它们转为int类型运算,而int型赋给byte型可能会损失精度。
不过如果x,x1和x2都为int型,那么java 不会报错。
标签:直接 表达式 错误 nbsp byte java body 溢出 blog
下面代码报错:
byte x; byte x1=1; byte x2=2; x=x1+x2;
原因:
(1)直接常量与变量不同,直接常量以及由直接常量组成的表达式只要值的范围符合,就可以直接赋给变量。
(2)但上述代码中x1和x2都是byte类型的变量,Java为了防止溢出,会自动把它们转为int类型运算,而int型赋给byte型可能会损失精度。
不过如果x,x1和x2都为int型,那么java 不会报错。
标签:直接 表达式 错误 nbsp byte java body 溢出 blog
原文地址:https://www.cnblogs.com/lydbky/p/8167188.html