【发布时间】:2018-01-30 07:55:52
【问题描述】:
基于 Oracle:Operator Doc Oracle
后缀incr和decr运算符的优先级高于前缀运算符。
但是当我尝试这个例子时:
int x = 1;
System.out.println(++x * x++); // prints 4
x=1;
System.out.println(x++ * ++x); // prints 3
如果我们按照运算符优先级,输出应该是:3 and 3 而不是4 and 3。
感谢任何帮助。
【问题讨论】:
-
Operands are evaluated left-to-right, always。优先级与评估顺序无关。
-
...他们应该表现不同。
-
@Array 请考虑接受一个答案,这就是论坛的运作方式,给那些花时间回答你的人加分;)
标签: java operators prefix postfix