问题:
这是我今天面试时遇到的一道题。要求不使用循环反转字符串,当时被卡住了,一直没有想到要用递归,后面面试官提示用递归,才想到,哎。
分析:
递归的思路是:构建一个方法,该方法把返回从0到 i 的反转字符串,如果i = 0, 返回当前字符。
public class Reverse {
public static void main(String[] args) {
String str = "abcd";
String str2 = reverse(str, str.length() - 1);
System.out.println(str2);
}
public static String reverse(String str, int index) {
if (index == 0)
return str.substring(0,1);
return str.substring(index, index + 1) + "" + reverse(str, index - 1);
}
}
转载请注明出处:
http://blog.csdn.net/beiyeqingteng