java - 递归查找字符串中字母出现的次数

标签 java string indexing char substring

嗨,我正在尝试创建一个递归方法,该方法返回一个字符在单词中存在的次数。到目前为止,我已经创建了一种以非递归方式实现此目的的方法,但我无法思考如何递归地实现此目的。

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/

相关文章:

java - log4j2领域的级别扩展

c++如何将字符串数组转换为字符数组

python查找文件中正则表达式匹配次数最多的部分

apache - 如何通过 .htaccess 正确地将 index.php 重定向到另一个页面?

.net - RavenDB 索引获取文档属性的最大值不起作用?

java - 如何使用Guice获取@ImplementedBy注解的接口(interface)实例

java - 从 Google 地方信息获取数据时出错

java - XMLWorker 不调用我的 servlet 来渲染 pdf 中的图像

c++ - 为什么可以将 nullptr 分配给 std::string?

mysql - 为什么 mysql 在可用时不使用索引