short s1 = 1; s1 = s1 + 1;有错吗?short s1 = 1; s1 += 1;有错吗?

420阅读 0评论2015-02-10 guozhaojuan
分类:Java

第一句编译错误,第二句编译通过。

1是int类型,s1+1是int类型,需要强制类型转换才能赋值给short;

s1 += 1相当于 s1=(short) (s1+1), 其中有隐含的强制类型转换
上一篇:JAVA中float与double的区别
下一篇:int 和Integer 有什么区别?