Post/Pre-Increment 混乱

Post/Pre-Increment confusion

据我了解,如果我有一个变量 k = 5,并且我执行 ++k,则 k = 6 的新值。如果我执行 k++,该值将保持为 5,直到 k 第二次出现在程序,即当它更改为 6 时。例如:

k = 5;
System.out.println(k++); //prints 5, but now that k has appeared the second time, its value is incremented to 6
System.out.println(k); //prints 6

然而,在这段代码中:

class test {
    public static void main(String args[]){
        for(int i =0; i<10; i++){
            System.out.println(i);
        }
        int x = 0;
        x++;
        System.out.println(x);
    }
}

输出:

0
1
2
3
4
5
6
7
8
9
1

在循环中,虽然变量i出现了第2次(in System.out.println(i)),它的值仍然为0。但是对于x,当它第二次出现时( in System.out.println(i)) =22=](x); ) 它的值递增。 为什么?我对 post 和预增量的工作方式感到困惑。

为了你的代码

    for(int i =0; i<10; i++){
        System.out.println(i);
    }

首先将变量 i 初始化为 0,然后检查它是否满足条件 i < 10 并打印变量,最后将变量 i 递增。

这就是 for 循环的工作原理。

在您编写的第二段代码中,它递增变量 x,最后打印 x 的值。