嗨,我正在尝试创建一个递归方法,该方法返回一个字符在单词中存在的次数。到目前为止,我已经创建了一种以非递归方式实现此目的的方法,但我无法思考如何递归地实现此目的。
public static int count (String line, char c)
{
int charOccurences = 0;
for (int x = 0 ; x < line.length () ; x++)
{
if (line.charAt (x) == c)
{
charOccurences++;
}
}
return charOccurences;
}
任何帮助都会很棒,谢谢。
最佳答案
你在这里缺少一些逻辑。
- 如果用完字符“c”,则 lastIndexOf 返回 -1,这将导致子字符串方法出错。
- 您需要一些逻辑来统计 c 的出现次数。您的递归仍然必须将调用的返回值添加到“计数”或调用计数的次数。目前,对 count 的最后一次调用将返回 0,该值将被传回。
这听起来像是一个家庭作业问题,所以我会让别人帮你做家庭作业:)
祝你好运!
关于java - 递归查找字符串中字母出现的次数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22055836/