【java基础:递归】递归recursion! 短命女 2022-06-06 12:49 191阅读 0赞 **递归:**函数自身直接或者间接地调用到了自身。 那么什么时候使用递归呢? 一个功能在被重复使用,并每次使用时,参与运算的结果与上一次调用有关,此时可以用递归来解决问题。 **注意:**1、递归一定要明确条件,否则容易死循环,栈内存溢出。 2、一定要注意递归的次数,如果次数太多,容易导致栈内存溢出。 下面用一个简单的例子来展示递归: package recursion; public class RecursionDemo { public static void main(String[] args) { /* * 采用递归求和的方法 */ int num=9,sum; sum=method_1(num); System.out.println(sum); //-------------------------------------------- /* * 下面展示一个递归无限循环(直到爆内存)的例子 */ show();//将爆出:StackOverflowError } public static void show() { display(); } public static void display() { show(); } public static int method_1(int num) { if(num==1) return 1; return num+method_1(num-1); } }
还没有评论,来说两句吧...