黑马程序员技术交流社区
标题:
纠结了,脑袋爆了
[打印本页]
作者:
生牛排
时间:
2016-7-22 23:20
标题:
纠结了,脑袋爆了
byte b1=3,b2=4,b;
b=b1+b2;
b=3+4;
上面两句错误提示为什么是第一句,数值运算不是先转换成int吗?
作者:
r1503882525
时间:
2016-7-22 23:52
b=b1+b2; 先运算b1+b2;确实隐式转换成int类型了,但前面b=就是运算后的值还是要付给byte类型的b变量。运算的结果隐式转换成int了,在往byte类型的b里赋值,就报错容易损失精度。:b=3+4; 3+4是常量,计算机知道运算的结果没超出byte范围,所以不隐式转换,byte的值往byte里赋,自然不会报错了。
作者:
seven7thTao
时间:
2016-7-23 00:06
还是斑竹厉害........
作者:
15105106710
时间:
2016-7-23 00:10
果然还是大神解释的清楚呀
作者:
自娱自乐的朋朋
时间:
2016-7-23 01:23
前排围观
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2