问题如下:
给定一个字符串,利用递归编写程序来返回其反串
解题源代码:
public class Demo04 { public static String f(String str) { if(str==null||str.length()<2)return str; // char temp = ch[index]; // ch[index] = ch[ch.length-index]; // ch[ch.length-index] = temp; return f(str.substring(1))+str.charAt(0); } public static void main(String[] args) { // int i = 1; System.out.println(f("abcd")); } }
解题思路:巧妙地利用String类里的切分方法来依次减少字符串的元素,当最后只剩一个元素的时候返回其本身,在在return语句后面加上每次字符串第一个元素,因为递归程序是从最后一层开始运行的,所以最终返回的就是倒序的字符串
希望对大家有所帮助
以上