黑马程序员技术交流社区
标题:
数据类型自动转换问题???
[打印本页]
作者:
小星星2015
时间:
2015-5-28 23:40
标题:
数据类型自动转换问题???
以下代码正确的是?(多选)
a. byte b = 1+1;
b. byte b=1; b=b+1;
c. byte b=1; b+=1;
d. byte b=1; b=++b;
谁知道选哪个啊,能说出原因来吗?
作者:
黑马生涯
时间:
2015-5-28 23:54
acd,A项赋值,没有问题
B项 类型转换异常,损失精度
C项 b+=1,+=是赋值运算符
D ++b,先运算在赋值,也没有问题。
作者:
武汉小菜鸟
时间:
2015-5-29 00:08
我也分不太清楚
作者:
张清华
时间:
2015-5-29 00:27
正确选项为C吧,其余的三个选项都有变量参与运算,其中会发生自动类型的提升,byte型提升为int型,在赋值给byte型,会造成精度丢失
作者:
bin2015
时间:
2015-5-29 09:21
答案是ACD
A是自定义变量所以A是对的
B是一个byte类型的变量和int类型的数字相加,会自动类型提升为int类型
Cb+=1这种写法不会出现类型转换问题
D是先自加再赋值也没有问题,这个和C是差不多的
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2