0

文字列内の重複する文字の数を確認し、そのインデックスの場所を指摘する方法はありますか? 私は indexOf() メソッドを使用しています。ただし、最初の結果のみが返されます。残りの同じ手紙は返却されません。また、すべての重複文字のインデックスの場所を知ることができるかどうかも知りたいです。

ここに私が現在使用しているコードの断片があります。

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

 indx = word.indexOf(letter);
4

2 に答える 2

2

はい、indexof は、特定の位置の先頭から最初に一致した位置のみを返します。おそらく、ループは、この文字がこの文字列に現れるすべての位置を見つけることができます。

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);
}
于 2013-03-20T02:01:54.260 に答える
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);
}
于 2013-03-20T02:10:14.667 に答える