如何编写一个递归方法,该方法将字符串作为参数并返回内部转出的字符串?

时间:2012-03-19 00:57:31

标签: java

您可以假设参数字符串是非空的,不是空的,并且不包含任何空格或标点符号。

这是我到目前为止的代码我认为你首先可能要扭转它,所以我试图扭转至少一半,但显然你可以告诉我,我不知道我在做什么,你会怎么写这个递归。

public static String reverseString(String s) {
    return new (StringBuffer(s).reverse().toString()/2);
}

例如:如果字符串是“abcde”,它应该返回“cbdae” 如果字符串是“pq”然后返回“pq” 如果字符串是“321123”,则返回“112233”

我该如何实现?

1 个答案:

答案 0 :(得分:0)

在编写递归方法时,您需要遵循以下两个方面

  • 终止逻辑
  • 重复逻辑

对于您目前的问题,终止案例将是字符串为null或只有1个字符。在这两种情况下,返回的值都是字符串本身。

你的情况下的重复逻辑是你的字符串的第一个字母需要在字符串其余部分的反向后附加。