关于Java循环和post/前缀运算符的问题

关于Java循环和post/前缀运算符的问题,java,prefix,postfix-notation,Java,Prefix,Postfix Notation,为什么后缀增量运算符不在变量“b”中添加值? 输出不应该像“8”吗?a++意味着使用a的值,然后添加1 因此,第一个将把a的值读取为10,然后加1,这样它将打印出11的值 第二个将b读作4,因此c=3+4=7b在添加完成后变为5。如果这是正确的,那么为什么序列不以0开头?@user2015669:因为当您在println中使用它时,它已经增加了。运算符处于for状态,因此for状态使用旧值。然后使用具有新值的a执行for的主体。当在for部分中检查条件时,a=0。但在检查之后,它被增加到a=1。

为什么后缀增量运算符不在变量“b”中添加值?
输出不应该像“8”吗?

a++
意味着使用
a
的值,然后添加1

因此,第一个将把
a
的值读取为10,然后加1,这样它将打印出11的值


第二个将
b
读作4,因此
c
=3+4=7<代码>b在添加完成后变为5。

如果这是正确的,那么为什么序列不以0开头?@user2015669:因为当您在
println
中使用它时,它已经增加了。运算符处于
for
状态,因此
for
状态使用旧值。然后使用具有新值的
a
执行
for
的主体。当在
for
部分中检查条件时,a=0。但在检查之后,它被增加到a=1。因此,它将打印
1
,而不是
0
。非常感谢您澄清我的概念!
int a=0;

    for (a=0; a++<=10;) {
        System.out.print(a+ " ");
    }

Output: 1 2 3 4 5 6 7 8 9 10 11  
int a=3, b=4;

    int c = a + b++;

    System.out.println(+c);

Output: 7