自己调自己,就可以说是某些方面的递归了。关于递归我讲两点:
①:递归一定有一个停下来的条件,否则的话会一直递归下去,程序没有结束条件了,就会陷入死循环中
②:递归是先往下走,然后再一层层的返回。
给你简单举个例子:
if (n==1) {
return 1;
}
int sum = getSum(n-1);
return n+sum;
}
假如现在传进去的是4,那么就会是首先n=4,接着调getSum(3),然后getSum(2),再然后getSum(1),getSum(1)将会返回1,这就是终止的条件,也就是传递完了,接下来就是往回返了,然后就是1+2=getSum(2),1+2+3=getSum(3),1+2+3+4=getSum(4),结果就是10了。这就是一个完整的自己调自己的过程。