目前,我熟悉递归和试图达到进一步的理解,我想看看它在扭转字符串的上下文中。我知道它并不像使用StringBuffer那样高效,但就像我说的那样,主要是为了更好地理解。我知道在这方面有几个关于这方面的问题,但我只想在演练中提供一些帮助。语义理解递归反向字符串返回语句
return reverse(str.substring(1)) + str.charAt(0);
字符串在这种情况下=“开始”
我知道子方法走的是一条不子的第一个字符
递归调用。 (部分)
reverse("Start")
reverse("tart")
reverse("art")
reverse("rt")
reverse("t") // when string is 1 char length then the reverse string is returned
但我想深入了解它如何在递归演练中连接和重新构建字符串。
在此先感谢。
好的答案,但是当length()是零(空字符串)时,我会一直返回空字符串。你不想测试一个空字符串。 – adamjmarkham
谢谢像素。那正是我需要的。竖起大拇指。 –