我正在使用带有java的aspectJ来运行一些代码。我想获得一个方法调用的增量计数。所以我在代码中使用了count++
。当我得到测试代码的结果时,它会显示
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++);
}
}
我真的很擅长编码。所以我真的很感激一些帮助。谢谢!
答案 0 :(得分:1)
System.out.println(calcCallCount++);
首先打印calCallCount
,然后递增它。使用System.out.println(++calcCallCount);
先增加然后再打印。
i++
和++i
之间的区别在于i++
在读取后会增加i
,并且++i
在读取之前会递增。 i++
称为后递增,++i
称为预递增。