java中+=和=+的区别
这两种方式有什么区别,第一种运行成功,第二种报错了。shorta=3;a+=2;shorta=3;a=a+2;...
这两种方式有什么区别,第一种运行成功,第二种报错了。short a=3; a+=2;
short a=3; a=a+2; 展开
short a=3; a=a+2; 展开
9个回答
展开全部
上面的答案简单看了一眼,感觉有点啰嗦,其实就一点
第一种情况不存在类型转换问题 自动将2视为跟a相同的类型
而第二种情况a是short类型的 2是默认类型 即int类型 byte short long类型的和int类型的数据运算的时候自动将结果转化为int类型,这时a是short类型而 计算结果是int类型 需要做类型转换才可以
第一种情况不存在类型转换问题 自动将2视为跟a相同的类型
而第二种情况a是short类型的 2是默认类型 即int类型 byte short long类型的和int类型的数据运算的时候自动将结果转化为int类型,这时a是short类型而 计算结果是int类型 需要做类型转换才可以
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
short a=3; 短整型
short b=3; 短整型
short c=3; 短整型
int d=3; 整型
a+=2; //这种方式是累加赋值,相当于 a=(short) (a+2);
b=+2; //这种方式是赋值,相当于b=2;跟b=-2;是一样的效果!
c=(short) (c+2); //这种方式也是累加赋值,跟a一样,相当于c+=2;,之所以报错是由于类型问题,你这样强制转换就不报错了!
d=d+2; //如果换成整数型就不会报错了!
short b=3; 短整型
short c=3; 短整型
int d=3; 整型
a+=2; //这种方式是累加赋值,相当于 a=(short) (a+2);
b=+2; //这种方式是赋值,相当于b=2;跟b=-2;是一样的效果!
c=(short) (c+2); //这种方式也是累加赋值,跟a一样,相当于c+=2;,之所以报错是由于类型问题,你这样强制转换就不报错了!
d=d+2; //如果换成整数型就不会报错了!
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2020-11-13
展开全部
付款的时候选择就可以了
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询