为什么增量计数从0开始而不是1?

时间:2017-08-11 04:30:12

标签: java aspectj

我正在使用带有java的aspectJ来运行一些代码。我想获得一个方法调用的增量计数。所以我在代码中使用了count++。当我得到测试代码的结果时,它会显示

0
1  
2

我希望看到12,而不是0。我知道为什么我先得到0。如何阻止0出现?

这是我的代码:

public aspect TrackMoneyOwed{
    private static int calcCallCount=0;

    pointcut calculatePriceCall():
       call(* *.calculatePrice());

    after(): calculatePriceCall(){   
        System.out.println(calcCallCount++);       
    }
}

我真的很擅长编码。所以我真的很感激一些帮助。谢谢!

1 个答案:

答案 0 :(得分:1)

System.out.println(calcCallCount++);

首先打印calCallCount,然后递增它。使用System.out.println(++calcCallCount);先增加然后再打印。

i++++i之间的区别在于i++在读取后会增加i,并且++i在读取之前会递增。 i++称为后递增,++i称为预递增。