黑马程序员技术交流社区

标题: 大家共同学习,关于递归调用的再次巩固 [打印本页]

作者: 而今从头越2012    时间: 2012-12-28 17:27
标题: 大家共同学习,关于递归调用的再次巩固
递归调用:就是自己调用自己,但是如果在实际的开发中使用了递归操作的话,那么有可能造成内存溢出问题,所 以开发中基本上是不建议使用递归完成操作的,例如:现在有如下一段代码:
public class MethodDemo01 {

  public static void main(String args[]){
   

  int sum = 0 ;
  for(int x=1;x<=100;x++){ sum += x ;
  }

  System.out.println(sum) ;
  }
  };
以上的代码中可以发现:在循环中有循环的开始和结束条件,以上的代码也可以使用递归的方式完成,但是一旦使 用递归之后,一定要注意,要设置好递归的结束条件。
public class MethodDemo02 {

  public static void main(String args[]){ System.out.println(add(100)) ;
  }

  public static int add(int temp){ if(temp==1){ //  递归的结束控制
  return 1 ;

  } else {
  return temp + add(temp-1) ;  //  递归调用,自己调用自己
  //  相当于:add(100) + add(99) + add(98) + ... + add(1)

  }
  }
  };

作者: 郑广昌    时间: 2012-12-28 17:34
总结好好,学习!!




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2