刚开始学JAVA,编译器是JDK1.6,没有用IDE写
class test{
public static void main(String args[]){
int a=4;
int result=(a++) +a;
System.out.println("result="+result+",a="+a);
a=4;
result=a+ (a++);
System.out.println("result="+result+",a="+a);
}
}
打印结果是:result=9,a=5;
result=8,a=5;
不明白为什么调一个顺序结果就变了,我觉得两次都是先做“++”运算后再做“+”的运算
,结果应该是一样的啊? 为什么不一样啊?哪位能帮忙解决下不?谢谢谢谢.......
问题补充:
对啊,为什么第二次的时候
a+(a++);
那个 a 依然是4呢?
而第一次
(a++)+a;
这个没括号的 a 却变成5了呢?