有沒有辦法檢查字符串中有多少重複字符並指出它的索引位置?我正在使用indexOf()方法。但它只會返回第一個結果。剩下的另一封信將不會被退回。我也想知道它是否有可能知道其所有重複字母的索引位置。如何指出字符串中所有重複字符的索引位置
這裏是我目前使用的代碼片段。
String word = "RASPBERRY";
char letter = 'R';
int indx = 0;
indx = word.indexOf(letter);
有沒有辦法檢查字符串中有多少重複字符並指出它的索引位置?我正在使用indexOf()方法。但它只會返回第一個結果。剩下的另一封信將不會被退回。我也想知道它是否有可能知道其所有重複字母的索引位置。如何指出字符串中所有重複字符的索引位置
這裏是我目前使用的代碼片段。
String word = "RASPBERRY";
char letter = 'R';
int indx = 0;
indx = word.indexOf(letter);
是的,唯一的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);
}
您應該在將代碼放入答案之前測試代碼。此代碼無限循環。 – Vulcan 2013-03-20 02:07:33
剛剛更新,謝謝 – 2013-03-20 02:10:51
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);
}
'indexOf'可以採取第二參數,以開始從搜索索引。所以要在'indx'後面找到一個字符的* next *索引,你可以使用'word.indexOf(letter,indx)'。 – Vulcan 2013-03-20 01:51:30
@Vulcan,我很欣賞你指導答案的方式。 upvote for you。 – techuser 2013-03-20 01:55:34
感謝您的答案先生沃爾坎不幸的是我有關於代碼的問題。有可能給我一些例子。就像我發佈的代碼一樣。如果您不介意謝謝 – 2013-03-20 01:58:17