【发布时间】:2017-02-26 00:43:37
【问题描述】:
我参考了Whats the best way to recursively reverse a string in Java? 的解决方案,但我的解决方案与我不理解的正确解决方案之间存在细微差别。
我正在尝试反转通过命令行给出的 args 中的字符串。这是我反转字符串的递归方法(几乎相同)。但是,我遇到了 StackOverflowException。我想知道为什么会这样?是不是因为我的方法是静态方法而他们的不是?
public static String reverse(String word) {
if (word.length() == 1) {
return word;
} else {
return reverse(word.substring(1) + word.charAt(0));
}
}
【问题讨论】:
-
从括号中取出 word.charAt(0)。