栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

short s1=1;s1=s1+1; 和 short s1=1;s1+=1; 有什么区别

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

short s1=1;s1=s1+1; 和 short s1=1;s1+=1; 有什么区别

short s1 = 1; s1 = s1 + 1;
有错,s1是short型,s1+1是int型,不能显式转化为short型
short+int编译器为了避免内存溢出,就给它向上转型(int) 而int不能直接付给short所以编译时就会报错,而s1+=1时,底层会帮我们自动强制类型转换把int转成short
可修改为s1 =(short)(s1 + 1) 。short s1 = 1; s1 += 1正确


short s1 = 1; s1 += 1为什么正确?
s1+= 1; 这种写法,强制把1转换成short类型了,就不会报错了。

tips:隐式转换和强制转换:
参考:Java中的自动类型转换/隐式类型转换

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/315103.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号