黑马程序员技术交流社区
标题:
sos!!!请回复分析,谢谢
[打印本页]
作者:
hexi5432
时间:
2016-8-10 22:16
标题:
sos!!!请回复分析,谢谢
short s1 = 1; s1 = s1 + 1;有什么错? short s1 = 1; s1 += 1;有什么错?
作者:
水月灬清影
时间:
2016-8-11 08:17
short s1 = 1; s1 = s1 + 1;这是错的,运算时候s1已经转换成int再与1相加,结果是int,赋给short显然不行。要加显式强转 s1=(short)(s1+1);另外提一句:两个short相加,也是默认转成int再相加,依然需要显式强转。
short s1 = 1; s1 += 1;正确,+=在底层已经隐式强转为short,也就是s1=(short)(s1+1),所以无误。
作者:
qetu001212
时间:
2016-8-11 20:49
第一个需要强转,第二个OK
作者:
龙旋
时间:
2016-8-11 23:28
第一个:short类型与1相加后的结果是int类型,赋值给short类型肯定会报错了,第二个系统会自动提升
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2