List<String> actualList = Arrays.asList ("mother has chocolate", "father has dog");
List<String> expectedList = Arrays.asList ("mother", "father", "son", "daughter");
有没有办法检查中是否expectedList包含字符串的任何子字符串actualList?
我找到了一个嵌套的 for-each 解决方案:
public static boolean hasAny(List<String> actualList, List<String> expectedList) {
for (String expected: expectedList)
for (String actual: actualList)
if (actual.contains(expected))
return true;
return false;
}
我试图找到 lambda 解决方案,但我不能。我找到的所有方法都检查String#equals而不是String#contains.
有这样的东西会很好:
CollectionsUtils.containsAny(actualList, exptectedList);
但它使用String#equalsnot比较字符串String#contains。
编辑:
基于问题:如果来自actualList 的所有子字符串都是expectedList 的一部分,我想得到TRUE。下面凯文的解决方案对我有用。
12345678_0001
米琪卡哇伊
守候你守候我
相关分类