黑马程序员技术交流社区

标题: 关于byte这个类型 来看看哪个代码正确 [打印本页]

作者: 王雨神    时间: 2013-11-11 09:41
标题: 关于byte这个类型 来看看哪个代码正确
第四题: 以下代码哪个是正确的?为什么?
                 a. byte b = 1 + 1;     
                 b. byte b = 1; b = b + 1;
                 c. byte b = 1; b = b += 1;   
                 d. byte b = 1; b = ++b;  
能详细讲解下吗?
作者: hurryup    时间: 2013-11-11 09:52
额。。。黑马测试题
作者: kellyzyb    时间: 2013-11-11 10:33
A C D 正确。
byte b = 1 + 1 右边为常量,编译器会自动判断是否超过byte型范围。
b = b + 1; 错误,需要强制类型转换。b+1运算完是int型,会损失精度
+= 和 ++ 内部由虚拟机完成了隐式的自动转换,所以不存在类型兼容问题。
作者: 黄炳期    时间: 2013-11-11 14:51
帖子已分类,若仍有疑惑,可重新提问
作者: 王雨神    时间: 2013-11-11 16:41
kellyzyb谢谢你!
作者: 路家豪    时间: 2013-11-12 21:58
我是做完测试题才看到的啊:'(




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2