int i = 12;
System.out.println(i += i -= i *= i);

解决方案 »

  1.   

    i + (i - i*i)
      

  2.   

    答案是-120
    int i = 12;
    System.out.println(i += i -= i *= i);
    i=(i+(i-(i*i))) 将i=12代入就可以计算结果,计算顺序从右向左
      

  3.   

    这个要按照优先级慢慢算的,运算符的优先级你知道吧,不过你工作时写这代码坑定要被人骂的,加上括号,
    i += (i -=( i *= i)),要不太费事了。
      

  4.   

    //两步
    //1.拆分
    i = i + (i -= i *= i);
    i = i + (i = i - (i *= i));
    i = i + (i = i - (i = i * i));
    //2.去除 "i ="
    i + (i - (i * i));