/* * 做几个递归小练习 * * 1.循环打印0-9 * 2.不用equals比较一个字符串是否相等 * 3.利用递归求一个一维数组所有数的和 */ public class demo8 { // 1.循环打印0-9 public static void fun1(int begin, int end) { if (begin > end) return; System.out.println(begin); fun1(begin + 1, end); } // 2.不用equals比较一个字符串是否相等 public static boolean fun2(String s1, String s2) { if (s1.length() == 0 && s2.length() == 0) return true; if (s1.length() != s2.length()) return false; if (s1.charAt(0) != s2.charAt(0)) return false; return fun2(s1.substring(1), s2.substring(1)); } // 3.利用递归求一个一维数组所有数的和 public static int fun3(int a[], int begin) { if (begin == a.length) return 0; int x = fun3(a, begin + 1); return x + a[begin]; } public static void main(String[] args) { int a[]= {1,2,3,4,5,6,7,8,9}; fun1(0, 9); System.out.println(fun2("abc", "abc")); System.out.println(fun3(a, 0)); } }
递归递归,越递越归。