如何指出字符串中所有重复字符的索引位置

时间:2013-03-20 01:49:02

标签: java

有没有办法检查字符串中有多少重复的字符并指出其索引位置?我正在使用indexOf()方法。但它只会返回第一个结果。另外剩下的同一封信将不予退还。我也想知道是否可以知道所有重复字母的索引位置。

这是我正在使用的代码片段。

 String word = "RASPBERRY";
 char letter = 'R';
 int indx = 0;

 indx = word.indexOf(letter);

2 个答案:

答案 0 :(得分:2)

是的,indexof只返回从特定位置开始的第一个匹配位置,对于你的情况,也许,一个循环可以找到这个char出现在这个字符串中的所有位置。

String word = "RASPBERRY";
char letter = 'R';
int start = word.indexOf(letter);

while(start != -1) {
     System.out.println("Found R in: " + start);
     start = word.indexOf(letter, ++start);
}

答案 1 :(得分:1)

String word = "RASPBERRY";
char letter = 'R';
int indx = word.indexOf(letter);

while (indx != -1) {
   System.out.println("Index at " + indx);
   indx = word.indexOf(letter, indx + 1);
}