本人愚钝,在有关JAVA ++ -- 的运算,对以下一些问题有些困惑,例如: 1、 int a = 2; int b = a+++a+++a++; 对于b的输出结果及执行过程。2、int a = 2;  a = ++a;  输出a 的结果以及执行过程。3、inta =2;    int b = a+++a;  的执行结果与过程。之类的一系列问题,希望有高手予以解答。

解决方案 »

  1.   

    1 int b = a++ + a++ + a++;
    这里的++运算符在变量a的后边,就是先执行+运算的操作在执行变量本身的++运算,也就是说可以化为
     int b = 2 + 3 + 4; 而a最后的值是5.
    2 如果++在变量的前边,那么是先执行++运算在执行+ - 等运算,int a = 2; a = ++a;a的值是3
    这些操作可以看看运算符和运算符的优先级的相关知识,应该挺好理解的。
      

  2.   

    3.int a =2; int b = a++ +a; 的执行结果是5
    执行过程是:b = 2+3 ,最后 a 的值是3
    同意1楼得说法
      

  3.   

    我只记得一条原理,你可以借此 以此类推。
    a++ 意为先使用a然后a+1
    ++a 意为a+1然后在使用
      

  4.   


    完全正确。
    另外,楼主可以这些代码放到eclipse中,按ctrl+shift+f格式化后,基本就可以明白代码是如何执行的了,该加空格的位置eclipse都加上了空格。