黑马程序员技术交流社区

标题: 问题 [打印本页]

作者: huadengaiyue    时间: 2015-5-26 19:25
标题: 问题
short s1 = 1; s1 = s1 + 1;有什么错? short s1 = 1; s1 += 1;有什么错?  
作者: hui1107464497    时间: 2015-5-26 19:54
s1 = s1 + 1 这个必须强制转化成short类型。高精度数字赋值给低精度数字型变量,要进行强制类型转换,也就是说目标类型必须能够容纳原类型单所有信息

作者: BlueSun    时间: 2015-5-26 20:01
本帖最后由 BlueSun 于 2015-5-26 20:05 编辑

s1 = s1 + 1s1为short类型,1为int类型,涉及数据类型自动提升,改成s1=short(s1+1)就行了,强制类型转换。


作者: huadengaiyue    时间: 2015-5-26 20:05
hui1107464497 发表于 2015-5-26 19:54
s1 = s1 + 1 这个必须强制转化成short类型。高精度数字赋值给低精度数字型变量,要进行强制类型转换,也就 ...

好。。。。。。。。。。。。。。




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