为了账号安全,请及时绑定邮箱和手机立即绑定

自减不是和正负优先级相等吗?为什么会有如下的区别?

http://img1.sycdn.imooc.com//58006f650001562405490322.jpg

int a=2;

a=-(--a);

System.out.println(a); 执行的没有问题,但是

int a=2;

a=--(-a);

System.out.println(a);

就会报错,自减不是和正负优先级相等吗?为什么有这种区别?


正在回答

1 回答

因为你的”-a“放在了”()“里,优先处理()里的

0 回复 有任何疑惑可以回复我~
#1

后会无期_xzh 提问者

不懂,完全不明白,即便是负数,自减运算也是支持的吧
2016-10-14 回复 有任何疑惑可以回复我~
#2

DipPotatoChip

++\--操作的对象必须是表量,不能是表达式,(-a)是表达式,所以不可以
2016-10-14 回复 有任何疑惑可以回复我~
#3

后会无期_xzh 提问者

非常感谢!
2016-10-17 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

自减不是和正负优先级相等吗?为什么会有如下的区别?

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信