黑马程序员技术交流社区

标题: 赋值 [打印本页]

作者: 静水★流深    时间: 2015-6-8 23:24
标题: 赋值
short s=5;为什么,s=s+2;会报错,而,s+=2;不报错。。。
作者: shuaiqi_P_D    时间: 2015-6-8 23:32
s+=2  隐含了一个强制转换。 s = (int)(s+2)
作者: 灰色水晶梦    时间: 2015-6-9 00:02
s+=2在运行的时候是自动有一个强转的
作者: 开弓没有回头箭    时间: 2015-6-9 00:20
低于int型的运算,在运算是都会自动转int型,就是说s+2结果是int型,赋值个byte型所以报错,+=符号会隐性的强制转型,将int型转成byte型,所以不报错




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