如何在Java中查找字符串指定次数出现的位置

作为一名经验丰富的开发者,我将会教你如何在Java中查找字符串指定次数出现的位置。首先,我们来整理一下整个流程:

flowchart TD
    A(开始)
    B(输入字符串和目标字符)
    C(初始化计数器和位置列表)
    D(查找目标字符出现的位置)
    E(更新计数器和位置列表)
    F(重复直到找到指定次数)
    G(输出结果)
    H(结束)
    A --> B --> C --> D --> E --> F --> G --> H

接下来,我们来详细说明每一个步骤以及需要使用的代码:

  1. 输入字符串和目标字符
String str = "This is a sample sentence, is it?";
char target = 'i';
  1. 初始化计数器和位置列表
int count = 0;
List<Integer> positions = new ArrayList<>();
  1. 查找目标字符出现的位置
int index = -1;
while ((index = str.indexOf(target, index + 1)) != -1) {
    positions.add(index);
    count++;
}

在这段代码中,我们使用indexOf方法来查找目标字符在字符串中第一次出现的位置,如果找到了,则将位置添加到列表中,并将计数器加一。然后继续查找下一个位置,直到找不到目标字符为止。

  1. 更新计数器和位置列表
// 继续在while循环中更新计数器和位置列表
  1. 重复直到找到指定次数
// 在while循环中控制找到指定次数后跳出循环
  1. 输出结果
System.out.println("目标字符 '" + target + "' 在字符串中出现的位置为:" + positions);
  1. 结束

至此,我们已经完成了查找字符串指定次数出现的位置的任务。希望这篇文章对你有所帮助。

在实际应用中,你可以将这段代码封装成一个方法,方便在其他地方调用。希望你能够继续努力学习,不断提升自己的编程能力。加油!