递归最直接的小案例,希望能让大家对递归稍微有一些入门的理解。
package Action;
public class test {
public static void main(String[] args) {
//静态的直接调用即可
f(10);
}
public static int f(int i){//参数
System.out.println(i);
if (i==0){ // 明确的递归终止条件
System.out.println("因为是0所以就不递归了。");
return 0; // 简单情景
} else { // 在将问题转换为子问题的每一步,解决该步中剩余部分的问题
i--; // 递去
System.out.println("此次递归值:"+i);
return f(i);// 递到最深处后,不断地归来
}
}
}
输出值
10 此次递归值:9 9 此次递归值:8 8 此次递归值:7 7 此次递归值:6 6 此次递归值:5 5 此次递归值:4 4 此次递归值:3 3 此次递归值:2 2 此次递归值:1 1 此次递归值:0 0 因为是0所以就不递归了。