习题1.2.7
以下递归函数的返回值是什么?
public static String mystery(String s) { int N = s.length(); if (N <= 1) return s; String a = s.substring(0, N / 2); String b = s.substring(N / 2, N); return mystery(b) + mystery(a); }
要点分析
其实不难看出,该方法的作用就是将一个字符串倒序输出,比如传入“12345”,输出:“654321”
编写一个测试类:
public class Seven { public static void main(String[] args) { System.out.println(mystery("123456")); } public static String mystery(String s) { int N = s.length(); if (N <= 1) return s; String a = s.substring(0, N / 2); String b = s.substring(N / 2, N); return mystery(b) + mystery(a); } } 输出: 654321
参考答案
返回值为字符串s的倒序值
请登录之后再进行评论