我有一个List,字符串如下:
String One
String Two
String Three
现在我想获得子串“One”的索引号。我怎么能得到这个? 如果我将它转换为数组,然后:
,我才能做到public static int findInArray(Object[] arr, String searchName) {
int i;
for (i=0; i<arr.length; i++ ) {
String test = arr[i].toString();
if (test.contains(searchName)) {
//System.out.println("Substring found in:"+i);
break;
}
}
return i;
}
是否有办法在不将其转换为数组的情况下搜索子字符串?
答案 0 :(得分:0)
列表已包含索引
for(int i=0;i<list.size();++i){
if (list.get(i).contains("searchString")) {
System.out.println("Substring found in:"+i);
}
}
答案 1 :(得分:0)
这是您正在寻找的代码,但它的性能非常糟糕,如果您的列表太大,您应该考虑采用不同的方法。
public static int find(List<String> list, String searchString) {
for(int i=0 ; i < list.size() ; ++i){
if (list.get(i).contains(searchString)) {
return i;
}
}
return -1;
}
答案 2 :(得分:-1)
尝试这种方式,您可以获取其索引,或返回-1表示未找到。
public static int findInList(List<String> list, String searchName) {
for(String str : list){
if(str.indexOf(searchName) > -1){
//System.out.println("Substring found in:"+i);
return list.indexOf(str);
}
}
return -1;
}