相关疑难解决方法(0)

Java:pre-postfix运算符优先级

关于Java中的运算符优先级,我有两个类似的问题.

第一:

int X = 10;
System.out.println(X++ * ++X * X++); //it prints 1440 
Run Code Online (Sandbox Code Playgroud)

根据Oracle教程:
postfix(expr ++,expr--)运算符的优先级高于prefix(++ expr, - expr)

所以,我想评估顺序:

1) first postfix operator: X++ 
   1.a) X++ "replaced" by 10
   1.b) X incremented by one: 10+1=11
   At this step it should look like:  System.out.println(10 * ++X * X++), X = 11;

2) second POSTfix operator: X++ 
   2.a) X++ "replaced" by 11
   2.b) X incremented by one: 11+1=12
   At this step it should look like:  System.out.println(10 * ++X …
Run Code Online (Sandbox Code Playgroud)

java operator-precedence pre-increment post-increment

13
推荐指数
1
解决办法
2891
查看次数