这整天让我头疼,我无法解决。目的是使字符串使用times参数作为字符串能够自我重复的次数来自我重复。
例如:

stringTimes("Hello", 3); //should return HelloHelloHello,
stringTimes("cat", 2); //should return catcat,
stringTimes("monkey", 0); //should return _____,


下面是我一直在使用的代码,但我一无所获。
救命!!!

public static String stringTimes(String theString, int times)
{
    String adder = "";
    if (times >= 1) {
        adder += theString;
        return stringTimes(theString, times - 1);
    }
    return adder;
}

public static void main(String[] args) {
    System.out.println(stringTimes("hello ", 8 ));
}

最佳答案

您的方法将转到最后一个递归调用,然后仅返回一个空字符串。更改为:

public static String stringTimes(String theString, int times)
{
    if (times >= 1) {
        return theString + stringTimes(theString, times - 1);
    }
    return "";
}

关于java - 使用递归连接字符串,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/38339516/

10-09 03:41