黑马程序员技术交流社区
标题:
数据类型转换
[打印本页]
作者:
ypenghui
时间:
2016-5-13 23:26
标题:
数据类型转换
byte b1 =3;
byte b2 =4;
byte b3 =3 + 4;
byte b4 =b1 + b2 ;
那么问题来了,那个错了呢?
作者:
随风而逸
时间:
2016-5-13 23:28
b4错了 b1 b2是变量 b1 b2相加可能会超出范围(byte的范围) 强转就好了
作者:
vvvvvc
时间:
2016-5-13 23:33
b4 需要强制类型转换 byte b4 =(byte) (b1 + b2) ;这样就可以了。
作者:
换一个昵称
时间:
2016-5-13 23:37
b4错了
b3是两个常量相加,Java中有常量优化机制.得到的还是byte的数据类型
b4是两个变量相加,有可能相加的结果超出byte数据类型的范围,同时在运算是b1和b2会自动提升为int类型得到的结果还是int类型,会损失精度
作者:
climb
时间:
2016-5-13 23:48
你真二{:2_39:}
作者:
afjzwed
时间:
2016-5-13 23:49
最后一个啊,会出现,类型转换错误
作者:
ypenghui
时间:
2016-5-14 00:12
感谢各位大神
作者:
z736886202
时间:
2016-5-14 00:28
....我的智商已强制下线了
作者:
cxl1694095035
时间:
2016-5-14 00:32
byte b4 =b1 + b2 ;这个错了,b1 + b2 是两个变量,变量存储的值是变化的,在编译的时候无法判断里面具体的值,相加有可能会超出byte取值范围
作者:
换一个昵称
时间:
2016-5-14 00:40
6666666666666666666
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2