gpt4 book ai didi

java - 字符串中所有字符出现的索引

转载 作者:IT老高 更新时间:2023-10-28 11:37:28 26 4
gpt4 key购买 nike

以下代码将打印 2

String word = "bannanas";
String guess = "n";
int index;
System.out.println(
index = word.indexOf(guess)
);

我想知道如何获取字符串“bannanas”中“n”(“guess”)的所有索引

预期的结果是:[2,3,5]

最佳答案

这应该打印在 Peter Lawrey's solution 末尾没有 -1 的位置列表 有。

int index = word.indexOf(guess);
while (index >= 0) {
System.out.println(index);
index = word.indexOf(guess, index + 1);
}

它也可以作为 for 循环来完成:

for (int index = word.indexOf(guess);
index >= 0;
index = word.indexOf(guess, index + 1))
{
System.out.println(index);
}

[注意:如果guess可以长于单个字符,则可以通过分析guess字符串,循环遍历word 比上述循环更快。这种方法的基准是Boyer-Moore algorithm .但是,似乎不存在有利于使用这种方法的条件。]

关于java - 字符串中所有字符出现的索引,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5034442/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com