Java中的前后增量和减量

Java中的前后增量和减量,java,increment,post-increment,decrement,pre-increment,Java,Increment,Post Increment,Decrement,Pre Increment,后天是我的计算机(JAVA)考试,我在上面的题目中有一个大问题。我理解后加和前加和减的含义。但我不明白当事情涉及到复杂、冗长的陈述时该怎么办。下面是这个问题的一个例子 class java_1 { public void main() { int x = 4; x += x++ - --x + x + x--; } } 你明白我所说的复杂陈述的意思。该语句只包含一个不断递增和递减的变量,我在这里感到困惑。你能帮我澄清我的困惑吗。另外,请回答上述代码。a+=b类似于a=a+b。利用这个假设

后天是我的计算机(JAVA)考试,我在上面的题目中有一个大问题。我理解后加和前加和减的含义。但我不明白当事情涉及到复杂、冗长的陈述时该怎么办。下面是这个问题的一个例子

class java_1
{ 
  public void main()
{
int x = 4;
x += x++ - --x + x + x--;
}
}

你明白我所说的复杂陈述的意思。该语句只包含一个不断递增和递减的变量,我在这里感到困惑。你能帮我澄清我的困惑吗。另外,请回答上述代码。

a+=b类似于
a=a+b
。利用这个假设,我们可以重写

x += x++ - --x + x + x--;
作为

现在让我们使用
x=4
并计算右侧(从左到右)

所以我们得到了

x = 4 + (4 - 4 + 4 + 4);
也就是说

x = 12;

请先阅读以下内容:。另一方面,尝试一下,调试一下,你就会看到。顺便说一句,任何人都不应该在生产代码中使用这种操作,因为没有人会理解它。如果你在计算机课上没有学到其他东西,就让它成为“不要这样写代码”。这个问题的答案肯定是“这代码绝对没有任何可检测的功能”检查你对运算符优先级的理解是一个有趣的问题,但如果你在现实中发现类似的问题,你的第一个解决方案应该是向你的老板提出,并让编写它的人被解雇。你如何评估像“1+2-3*4+5/6-7-8+9”这样的数学表达式?这一过程的可视化效果很好。
x = 4 + (4 - 4 + 4 + 4);
x = 12;