Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/393.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/reporting-services/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 找出哪个ArrayList编号包含我的搜索?_Java_Sorting_Search_Arraylist_Contains - Fatal编程技术网

Java 找出哪个ArrayList编号包含我的搜索?

Java 找出哪个ArrayList编号包含我的搜索?,java,sorting,search,arraylist,contains,Java,Sorting,Search,Arraylist,Contains,我正在寻找一种方法来找出,我可以在数组列表中找到什么。例如,我有以下列表: #0659 Spoon 5 #0234 RGB-Lightning 8 #8453 Watercooling 50 现在我想知道RGB Lightning在列表中的位置。例如,我有一个这样的搜索:“35; 0659 Spoon”现在我想看看哪个部分包含它。我已经尝试了一些方法,但得到了NullPointerException:( 这段代码作为一个独立的代码工作,但在我的项目中它没有(我在数组列表中读到) intlauf

我正在寻找一种方法来找出,我可以在数组列表中找到什么。例如,我有以下列表:

#0659 Spoon 5
#0234 RGB-Lightning 8
#8453 Watercooling 50
现在我想知道RGB Lightning在列表中的位置。例如,我有一个这样的搜索:
“35; 0659 Spoon”
现在我想看看哪个部分包含它。我已经尝试了一些方法,但得到了
NullPointerException
:(

这段代码作为一个独立的代码工作,但在我的项目中它没有(我在数组列表中读到)

intlaufvar=-1;
List haystack=Arrays.asList(新字符串[]{“ABCD”、“EFGH”、“IJ KL”、“M NOP”、“UVW X”});
List针=Arrays.asList(新字符串[]{“IJ”});
//为了减少迭代次数,创建一个大正则表达式来检查整个干草堆
StringBuilder sb=新的StringBuilder();
某人附加(“*”);
用于(线针:针){
附加(针)附加(“|”);
}
替换(sb.length()-1,sb.length(),“”*);
字符串regex=sb.toString();
for(字符串目标:haystack){
如果(!target.matches(正则表达式)){
laufvar++;
持续
}
用于(线针:针){
if(目标包含(针)){
laufvar++;
System.out.println(目标+“包含”+指针);
System.out.println(haystack.get(laufvar));
}
}
}
}

你的意思是:int id=yourarraylist.indexOf(“"0234 RGB Lightning 8”);

对这种格式感到抱歉:(给我们看看你的代码我添加了它:p可能是重复的。唯一的区别是我需要知道它是列表的哪一部分。我以后需要在那里更改一些内容。不,我想知道我的arraylist包含哪些内容因为我后面没有“8”。
    int laufvar = -1;

     List<String> haystack = Arrays.asList(new String[] { "ABCD", "EFGH", "IJ KL", "M NOP", "UVW X" });
        List<String> needles = Arrays.asList(new String[] { "IJ" });

        // To cut down on iterations, create one big regex to check the whole haystack
        StringBuilder sb = new StringBuilder();
        sb.append(".*(");
        for (String needle : needles) {
            sb.append(needle).append('|');
        }
        sb.replace(sb.length() - 1, sb.length(), ").*");
        String regex = sb.toString();

        for (String target : haystack) {
            if (!target.matches(regex)) {
                
                laufvar++;
                continue;
            }

            for (String needle : needles) {
                if (target.contains(needle)) {
                    laufvar++;
                    System.out.println(target + " contains " + needle);
                    System.out.println(haystack.get(laufvar));
                    
                }
            }
        }
}