检查ArrayList <String>是否包含字符串的一部分

Too*_*ook 0 java arraylist

假设我有一个ArrayList:

<string1.4>
<string2.4>
<string3.4>
Run Code Online (Sandbox Code Playgroud)

当我说arrayList.containsSubString('string1')时,我希望返回arrayList的第一个元素; 除了遍历每个元素arrayList并检查if是否string1是该元素字符串的子字符串之外,怎么做呢?

aio*_*obe 12

我能想到的唯一方法就是:

strs.get(strs.indexOf(new Object() {
    @Override
    public boolean equals(Object obj) {
        return obj.toString().contains(s);
    }
}));
Run Code Online (Sandbox Code Playgroud)

不知道它是否被认为是好习惯.


mor*_*rja 5

使用ArrayList,除了迭代它之外别无选择.但是您可以使用其他数据结构,例如前缀树(例如三元搜索树,请参阅此Java示例).