本帖最后由 jwx555 于 2014-7-10 22:05 编辑  
 
总要重复一个行为的时候就可以想想递归。 
 
 
现实中,下楼梯,人从上面开始一层一层台阶的重复下楼动作,直到到了一楼才停止。 
有无限的楼梯么?没有! 
所以用递归的时候特别要注意结束条件。 
 
 
举个例子吧 
从1加到100,我们初中就会,Java要怎么表现呢? 你要写“1+2+3+...+100” 把一百个数都打出来吗? 
这样当然可笑。 
 
 
- public class Test05 {
 
 -         public static void main(String args[]){
 
 -                 System.out.println(sum(100)) ;
 
 -         }
 
 -         
 
 -         public static int sum(int a){
 
 -                 if (a!=1){   //设置递归结束条件
 
 -                         return a+sum(a-1) ;    //把重复的加法动作化为递归!
 
 -                 }
 
 -                 return 1 ;
 
 -         }
 
  
- }
 
 
  复制代码 
这里用递归就可以很少量的代码完成功能,但是注意:数不能太大,递归会大量消耗内存,如果数字太大,递归量太多就会发生内存溢出错误!! 
 
 |