不用循环反转字符串

问题:

这是我今天面试时遇到的一道题。要求不使用循环反转字符串,当时被卡住了,一直没有想到要用递归,后面面试官提示用递归,才想到,哎。

分析:

递归的思路是:构建一个方法,该方法把返回从0到 i 的反转字符串,如果i = 0, 返回当前字符。

  1. public class Reverse {
  2. public static void main(String[] args) {
  3. String str = "abcd";
  4. String str2 = reverse(str, str.length() - 1);
  5. System.out.println(str2);
  6. }
  7. public static String reverse(String str, int index) {
  8. if (index == 0)
  9. return str.substring( 0, 1);
  10. return str.substring(index, index + 1) + "" + reverse(str, index - 1);
  11. }
  12. }
转载请注明出处: http://blog.csdn.net/beiyeqingteng

猜你喜欢

转载自blog.csdn.net/a133900029/article/details/80848206