Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/387.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何评估java操作符评估_Java_Operators - Fatal编程技术网

如何评估java操作符评估

如何评估java操作符评估,java,operators,Java,Operators,我是java新手,试图了解如何执行计算步骤以获得最终结果。最后的答案是49。从优先运算符层次结构来看,我的计算结果并没有达到49 以下是我的表达式代码: class Test { public static void main(String args[]) { int a = 6, b = 5; a = a + a++ % b++ *a + b++ * --b; System.out.print(a) } } 运营商有优先权。有一张这样的桌子 此外,您还可以使

我是java新手,试图了解如何执行计算步骤以获得最终结果。最后的答案是49。从优先运算符层次结构来看,我的计算结果并没有达到49

以下是我的表达式代码:

class Test
{
  public static void main(String args[])
  {
   int a = 6, b = 5;
   a = a + a++ % b++ *a + b++ * --b;
   System.out.print(a)
  }

} 

运营商有优先权。有一张这样的桌子


此外,您还可以使用圆括号(括号)强制执行正确的计算顺序。

模与除法和乘法具有相同的优先级。下一个优先级是加法和减法。操作从左到右。

添加括号以提高清晰度:

      ( a ) + ( a++ % b++ *a ) + ( b++ * --b )
group   I         II                 III
  • a++%b++*a评估为:a。(6%5)=1
    B1*6到目前为止,a=6,b=5
  • 完成此操作后,a和b的值分别增加到7和6。i、 e后固定增量仅在上述步骤或组中的模/乘/除之后发生

  • b++*--b=>6*6。给出36的值 完成此操作后,将执行++操作,但也会执行-,有效地将b的值保留为6

  • 下一个操作是加法。i、 e 7+6+36=49


  • 参考资料:

    您能否分享海报使用的特定运营商的详细信息,而不仅仅是发布链接?虽然此链接可以回答问题,但最好在此处包含答案的基本部分,并提供链接供参考。如果链接页面发生更改,则仅链接的答案可能无效-