byte类型 java中整数运算是取模的,在你超出计算范围时,不会上溢或下溢,相反发生回转,其实a+b的返回类型是int,如int c=a+b不会出错,要不就byte c=(byte)(a+b) 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 为什么两个byte相加会超出范围而,byte c=1+2;正确呢 如果byte c=127+1是什么情况?你试试 回:为什么两个byte相加会超出范围而,byte c=1+2;正确呢。因为1和2是Integer Literal,所以Java编译器能首先判断出1+2的两个操作数都分别落入byte的数值范围内),故能编译通过;而a+b的情况下,Java编译器不能确定a+b是否超出,因而对于有Identifier参与的加法式会取integer为结果 java计算器 100分请教Java代码运行顺序问题 用JButton按钮退出对话框JDialog 请指教下java信息国际化怎么实现 如何验证文本框内的类型 sql语句的嵌入java语言的问题,希望大家帮帮忙 ServerSocket写法 Applet 不能自动初始化运行,只有当把鼠标移到上面初始化运行,重装ie6.0,java虚拟机也不行,请教大家? kawa不支持中文吗?在编辑区中文怎么也打不上,请救急! 这本书值不值? 在java中能不能获取机器的名字和用户的登录名? 求助!
而a+b的情况下,Java编译器不能确定a+b是否超出,因而对于有Identifier参与的加法式会取integer为结果