关于+=运算符的小细节

当使用+=、-=、*=、/=、%=、运算符对基本类型进行运算时,遵循如下规则:
运算符右边的数值将首先被强制转换成与运算符左边数值相同的类型,然后再执行运算,
且运算结果与运算符左边数值类型相同。
比如+=运算的时候其实就相当于int x=10;
x+=10;与x=x+10;是一样的效果的。
但是short类型中,在运算的时候就需要注意了
比如:short s=10;
s+=10;这样可以编译通过,但是这时如果写 s=s+10;编译时就会报错了,这是因为s是short类型的,而10是int类型的,右边的s与10运算完了以后short类弄会自动转换成int类型,而左边的s是个short类型的变量,右边的int类型的值是不能赋给左边的short类型的s的,这时需要将右边的值强制类型转换成short类型,将之改为:
short s=10;
s=(short)(s+10);这样就可以了。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值