Java 判断字符串出现次数

介绍

在Java中,我们经常需要对字符串进行一些操作和判断。其中一个常见的需求是判断一个字符串在另一个字符串中出现的次数。本文将向你介绍如何在Java中实现这个功能。

流程图

下面是整个判断字符串出现次数的流程图:

graph LR
A(开始)
B[输入字符串和目标字符串]
C{目标字符串长度是否大于0}
D[使用indexOf方法查找目标字符串在输入字符串中的位置]
E{indexOf方法的返回值是否大于等于0}
F[将输入字符串截取为剩余字符串]
G[将出现次数加1]
H(输出出现次数)
I(结束)

A-->B-->C
C--是-->D
C--否-->H
D-->E
E--是-->G
E--否-->H
G-->F
G-->D
F-->D
H-->I

代码实现

下面是每一步需要做的事情以及相应的代码实现。

  1. 输入字符串和目标字符串。

    String input = "Hello World!";
    String target = "l";
    
  2. 判断目标字符串的长度是否大于0。

    if (target.length() > 0) {
      // 执行下一步操作
    } else {
      // 输出出现次数为0,结束
    }
    
  3. 使用indexOf方法查找目标字符串在输入字符串中的位置。

    int index = input.indexOf(target);
    
  4. 判断indexOf方法的返回值是否大于等于0。

    if (index >= 0) {
      // 执行下一步操作
    } else {
      // 输出出现次数为0,结束
    }
    
  5. 将输入字符串截取为剩余字符串。

    input = input.substring(index + target.length());
    
  6. 将出现次数加1。

    count++;
    
  7. 跳转到第3步,继续执行后续的判断和操作。

  8. 输出出现次数。

    System.out.println("目标字符串在输入字符串中出现的次数为:" + count);
    

完整的代码如下所示:

public class Main {
  public static void main(String[] args) {
    String input = "Hello World!";
    String target = "l";
    int count = 0;
    
    if (target.length() > 0) {
      while (true) {
        int index = input.indexOf(target);
        if (index >= 0) {
          input = input.substring(index + target.length());
          count++;
        } else {
          break;
        }
      }
    }
    
    System.out.println("目标字符串在输入字符串中出现的次数为:" + count);
  }
}

示例运行结果

使用输入字符串为"Hello World!"和目标字符串为"l"进行示例运行,得到的输出为:

目标字符串在输入字符串中出现的次数为:3

总结

通过以上的步骤和代码实现,我们成功地实现了在Java中判断字符串出现次数的功能。你可以根据实际需求,将目标字符串和输入字符串替换为你所需要的值。希望本文能够帮助到你,如果有任何问题,请随时提问。