java中a++和++a的区别

1.当作为独立语句使用时,a++和++a是一个效果,都等价于a=a+1

public class test {
    public static void main(String[] args) {
        int a = 1;
        a++;
        ++a;
        System.out.println(a);
    }
}

2.作为表达式使用:++a先自增后赋值;a++先赋值后自增

public class test {
    public static void main(String[] args) {
        int a = 1;
        int b = a++;
        int c = ++a;
        System.out.println(b);
        System.out.println(c);
    }
}

以上,下面有这样两个题目:

此时i输出的值是多少?

这里是后++,计算机内部其实是这样的一个执行步骤:

(1)temp=i (2)i=i+1 (3)i=temp

显然可得i的输出仍然是1

那么,变换一下题目,如下:

这个时候的i输出是多少呢?

按照上面的步骤,我们来分析一下:

(1)i=i+1 (2)temp=i (3)i=temp 

结果输出2

猜你喜欢

转载自blog.csdn.net/Danelxiong/article/details/127822891