这里使用Java,递减运算符是一个递归funtion -在递归函数
private void printVar01(int t){
if(t != 0){
logp.info("o: "+t);
printVar01(t-1);
}
}
相同funtion有轻微的修改 -
private void printVar02(int t){
if(t != 0){
logp.info("o: "+t);
printVar02(t--);
}
}
如果我通过像4,printVar01作品整数值如预期的那样,在连续的recrsive调用中t递减到0,最终导致程序退出。
使用printVar02,t值为4.
为什么?我假设这与变量赋值和/或值如何传递给函数有关。
https://docs.oracle.com/javase/tutorial/java/nutsandbolts/op1.html –
是的,我应该读过那个文档两次:)。此外 - http:// stackoverflow。com/questions/484462 /在i-and-i-in-a-loop中的差异 –