赞
踩
Java中的方法递归
方法递归
递归是一种算法,在程序设计语言中广泛应用。
方法调用自身的形式称为方法递归(recursion)。
递归的形式
直接递归:方法自己调用自己。
间接递归:方法调用其他方法,其他方法又回调方法自己。
方法递归注意事项
递归如果没有控制好终止,会出现递归死循环,导致栈内存溢出现象。
递归算法三要素
递归的公式
递归的终结点
递归的方向必须走向终结点
public class Recursion01 {
public static void main(String[] args) {
T t = new T();
t.test(4);
}
}
class T {
public void test(int n) {
if(n > 2) {
test(n-1);
}
System.out.println(n);
}
}
运行结果如下:
2
3
4
public class Recursion01 {
public static void main(String[] args) {
T t = new T();
t.test(4);
}
}
class T {
public void test(int n) {
if(n > 2) {
test(n-1);
}else {
System.out.println(n);
}
}
}
注意示例1和示例2的区别。示例1是执行test方法,就会打印当前的n,示例2是做出判断小于或者等于2的打印当前的n。
递归求和
public class diguiqiuhe {
public static void main( String[] args ) {
int num=5;
int sum=getSum(num);
System.out.println(sum);
}
private static int getSum( int num ) {
if (num==1){
return 1;
}
return num+getSum(num-1);
}
}
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。