【发布时间】:2018-09-12 02:21:21
【问题描述】:
传递给此方法的字符串如何被反转?如果您传递“ABCD”,则字符串变为“DCBA”,但我在想 reverse(str.substring(1)) 会调用它自己,直到它返回“D”,它将与 str.substring(0,1) 连接起来为D,返回的字符串为“DD”。JAVA编程语言。
private static String reverse(String str) {
if (str.length() <= 1) {
return str;
}
return reverse(str.substring(1)) + str.substring(0, 1);
}
【问题讨论】:
-
嗨,欢迎来到 SO。你知道递归是如何工作的吗? reverse(str.substring(1)) 将调用它自己,直到它返回“D”,它将与 str.substring(0,1) 连接,即 D,返回的字符串为“DD” - 没有。你尝试调试了吗?
标签: java