我才开学JAVA,昨晚遇到一个问题,byte的范围最大是到127,可是当我编写如下代码
byte a = 50;
byte b = 60;
byte c = a + b;
System.out.println(c);
的时候,却报错损失精度,c的结果110按理说没有超出范围,如果把c改成int型,或者用byte c = (byte)(a+b)则可以通过,这是为什么?敬请请不吝赐教。
...全文
1034打赏收藏
损失精度
我才开学JAVA,昨晚遇到一个问题,byte的范围最大是到127,可是当我编写如下代码 byte a = 50; byte b = 60; byte c = a + b; System.out.println(c); 的时候,却报错损失精度,c的结果110按理说没有超出范围,如果把c改成int型,或者用byte c = (byte)(a+b)则可以通过,这是为什么?敬请请不吝赐教。