我正在学习Java,并且在一个递归示例中使用了以下代码,我不知道为什么print语句开始从1而不是10开始打印j?
class Test {
void printtest(int j) {
if(j==0)
return;
else
printtest(j-1);
System.out.println(j);
}
}
public class RecursionTest {
public static void main(String args[]) {
Test t = new Test();
t.printtest(10);
}
}
Run Code Online (Sandbox Code Playgroud)
输出:
1
2
3
4
......10
Run Code Online (Sandbox Code Playgroud)
printtest(10)只有在调用return之后才会打印10,只有在调用printtest(9)return之后才打印9 printtest(8),依此类推......
printtest(0)返回时打印第一个输出,然后打印1,然后printtest(1)返回,打印2,依此类推......
| 归档时间: |
|
| 查看次数: |
76 次 |
| 最近记录: |