首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >优先运算符在java 8-后缀操作符优先

优先运算符在java 8-后缀操作符优先
EN

Stack Overflow用户
提问于 2021-08-25 16:38:28
回答 1查看 108关注 0票数 1

java 8中的优先运算符之后,很明显,后缀运算符(expr++ expr-)比一元运算符(++expr --expr)具有更高的优先级。但是,在执行此代码时:

X= 3;y= ++x - x++;

Y的值是0

但对我来说,在上表之后,结果应该是y=(5-3),因为应该首先评估x++。

有人能解释为什么这是y=0而不是y= 2吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-08-30 14:30:23

何时在表达式中的同一行上使用运算符优先级?或者为什么会有操作符优先顺序,以及何时使用?

运算符优先决定几个运算符中哪个与操作数相关联。在表达式++x - x++中,有两个优先位置:

  1. ++x - … -两个运算符++和(二进制) -可以在x上使用;++具有优先级,因此这等同于(++x) - …,而不是++(x - …)
  2. … - x++ -两个操作符(二进制) -++可以在x上使用;++具有优先级,因此这等同于… - (x++),而不是(… - x)++
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/68926802

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档