为什么增量计数从0开始而不是从1开始?
问题描述:
我使用java的aspectJ来运行一些代码。我想获得一个方法调用的增量计数。所以我在我的代码中使用了count++
。当我得到我的测试代码的结果,它显示为什么增量计数从0开始而不是从1开始?
0
1
2
我期待看到1
和2
,但不是0
。任何想法为什么我第一次得到0
。我怎样才能阻止0
出现?
这里是我的代码:
public aspect TrackMoneyOwed{
private static int calcCallCount=0;
pointcut calculatePriceCall():
call(* *.calculatePrice());
after(): calculatePriceCall(){
System.out.println(calcCallCount++);
}
}
我在编码真正的新。所以我会很感激一些帮助。谢谢!
答
System.out.println(calcCallCount++);
首先打印calCallCount
然后增加它。使用System.out.println(++calcCallCount);
先增量然后打印。
i++
和++i
之间的区别是,i++
增量i
一旦被读取,右前++i
增量被读取。 i++
称为后增量,++i
称为预增量。
哪里是“一些代码”? – soorapadman
因为你在增加之前显示,也许?很难说,没有泽码... – AntonH
公众方面TrackMoneyOwed {私人静态诠释calcCallCount = 0; /*私人双人牌照; */ pointcut calculatePriceCall(): call(* * .calculatePrice()); ():calculatePriceCall(){ System.out.println(calcCallCount ++); } } – Sami