public class Test1 {
public static void main(String[] args) {
int i=5;
int j=i++;
System.out.println(i);//6
System.out.println(j);//5
int m=5;
int n=++m;
System.out.println(m);//6
System.out.println(n);//6
}
}
//由上述可以看出 不论是a++还是++a 在独立计算的时候没有区别
它都必须对a的值加1
//但是 在参与其他运算就存在差距
对于上述 i j的运算 i++ 后自增运算先将i的值赋值给j 再给i+1 所有i=6 j=5
所谓后自增在笔者看来 就是最后参与运算(个人理解)
对于上述 m n 的计算 ++m 所谓前自增运算 则是现将m的值加1 在将其后的值赋值给
n 所有 m=6,n=6;
public class Test1 {
public static void main(String[] args) {
int a=10;
int b;
b=a++ +20;
System.out.println(a);
System.out.println(b);
}
}
由此上结果可以看出
在对b进行赋值运算时,赋值右边的操作是 先将a的值与20 做运算
将其运算的结果的和赋值给b 所以b=30 最后对a进行自增 a=11;
如有不对的地方请大佬指正。