Java -查找数组haystack中needle的一部分的indexof

goucqfw6  于 2023-03-06  发布在  Java
关注(0)|答案(4)|浏览(143)

我试图找出数组的哪个索引位置包含字符串的一部分。

FullDirPrt = "a1a" "b2b" "c3c"

String doT ="b2";
int DotPos = Arrays.asList(FullDirPrt).indexOf(doT);

如果我搜索b2b,它会返回indexOf;如果我只搜索b2,它会返回-1。

aiqt4smr

aiqt4smr1#

您必须分别检查数组中的每个项,因为每个数组项都是一个单独的字符串:

String[] full = { "a1a", "b2b", "c3c" };
String doT = "b2";

for(int i = 0; i < full.length; i++) {
    if(full[i].contains(doT)) {
        System.out.println("Found item at index " + i);
    }
}
u0sqgete

u0sqgete2#

你要匹配整个字符串,你必须循环遍历整个列表或数组,然后检查每个字符串的indexOf。

for (String s : FullDirPrt) {
    if (s.indexOf("bs") > 0) {
        // do something
    }
}
ioekq8ef

ioekq8ef3#

使用简单的字符串数组,而不使用列表,你也可以做如下.

String[] full={"a1a", "b2b", "c3c"};
String doT = "b2";
for(String str:full){
if(str.contains(doT)){
System.out.println(str+" contains "+doT);
}
}
46qrfjad

46qrfjad4#

public int stringFinder(String haystack, String needle) {
    return haystack.indexOf(needle);       
}

干草堆是要从中寻找的线针
字符串.indexOf(要查找的字符串)

相关问题