Recursion递归
1 /*java.lang 核心包 如 String Math Integer System Thread等 拿来直接用 2 * java.awt 窗口工具 GUI 3 * java.net 网络包 4 * java.io 输入 输出 5 * java.util 工具类 日期 日历 定义 系统特性 6 * 7 * 8 */ 9 public class TestRecursion { 10 11 /** 12 * @author Administrator 13 * @version 1.0 14 * 递归 15 * 1 方法调用本身(递归体 ) 16 * 2什么时候不再调用(结束条件 也叫递归头) 17 * 18 */ 19 static int a=0; 20 21 22 public static void test01(){ 23 a++; 24 System.out.println(a+"TestRecursion.test01()"); 25 if(a<=10){ 26 test01(); 27 }else{ 28 System.out.println("over!"); 29 } 30 31 } 32 /** 33 * 阶乘 使用递归方法 实现 34 * @param n 阶乘的最大数 35 * @return 阶乘结果返回值 36 */ 37 38 public static long factorial(int i){ 39 if(i==1){ 40 return 1; 41 }else{ 42 return i*factorial(i-1); 43 } 44 } 45 public static void test03(){ 46 System.out.println("TestRecursion.test03()"); 47 } 48 49 50 public static void main(String[] args) { 51 test01(); 52 //5!=? 120 53 long n =factorial(5); 54 System.out.println(n); 55 } 56 57 }
posted on 2017-09-28 21:44 PoeticalJustice 阅读(164) 评论(0) 编辑 收藏 举报