/* returns the index of the first occurrence of any of the
* characters in chars in String s or -1 if none of the characters
* in chars are found in s. */
以上是说明,下面是我的代码。
public static void main(String[] args){
indexOfAny("kabomba","bomb");
}
public static int indexOfAny(String s, String chars) {
int index = 0;
String rev = "";
for(int i = s.length()-1;i>=0;i--){
rev+=s.charAt(i);
}
String x = rev;
for(int i = 0;i<x.length();i++){
for(int j = 0; j<chars.length();j++){
if(x.charAt(i)==chars.charAt(j)){
index = i;//**
}else {
index = -1;
}
}
}
System.out.println(index);
return index;
}
要重新说明,问题是在**它将到达字符串x的最后一个字符,并比较字符串中的字符是否相同并返回-1,但我希望代码结束并返回字符串x的索引在字符串x中字符串字符中最后一次出现任何字符后的i。
所以输出应该是4.因为反向字符串中b的索引(字符串字符的字符之一)是4,这就是我想要的。
答案 0 :(得分:0)
答案 1 :(得分:0)
您可以使用StringUtils类来阻止迭代循环。 Here are the indexOf methods present. OR
You can use String.indexOf method which is present under string class.