增量运算符java

增量运算符java,java,Java,第一个索引++显示值“1”而不是“2” 为什么该值不递增 任何投入都会有帮助 package scratch; class Feline { { index = 1; } int index; public static void main(String[] args) { new Feline().go(); }

第一个索引++显示值“1”而不是“2”

为什么该值不递增

任何投入都会有帮助

    package scratch;

    class Feline {
        {
            index = 1;
        }
            int index;
          public static void main(String[] args) {
              new Feline().go();
          }

         void go(){
             System.out.println(index);
             System.out.println(index++);
             System.out.println(index++);
             System.out.println(index++);
         }
        }

Result:
1
1
2
3

因为您使用的是增量后运算符
++
,它发生在要递增的变量之后。它的值是变量的当前值,增量随后发生

[T] 将值1与变量的值相加,其和为 存储回变量中

后缀增量表达式的值是 变量,然后再存储新值

在返回当前值之后,它确实会递增

System.out.println(index);
。。。只需打印
1

System.out.println(index++);
。。。打印
1
,然后将
索引增加到
2

System.out.println(index++);
。。。打印
2
,然后将
索引增加到
3

System.out.println(index++);

。。。打印
3
,然后将
索引增加到
4

,这就是增量后的工作

         System.out.println(index);
         System.out.println(index++);//printed index and  +1 to the index
         System.out.println(index++);
         System.out.println(index++);

因为它会打印,然后递增<代码>++索引将递增,然后打印。后缀和前缀。你有没有试过搜索这个?