CollectionUtils.retainAll 方法不起作用 (Java)



我有两个ArrayLists。我想比较它们,以获得常见元素的数量。或者只是一个包含常见元素的列表。

当我尝试使用CollectionUtils.retainAll执行此操作时,我认为它不知道这种方法?

说它找不到符号"变量集合实用工具",所以它也不知道方法?还是我错了什么?

我的代码:

ArrayList<String> lijst1 = new ArrayList<String>(Arrays.asList(inhoud1.split("AT")));
ArrayList<String> lijst2 = new ArrayList<String>(Arrays.asList(inhoud2.split("AT")));
ArrayList matches = CollectionUtils.retainAll(lijst1,lijst2);

对不起,如果这很容易。可能会是。

CollectionUtils类是 Apache Commons Collections 库的一部分,不是 Java API 的一部分,因此默认情况下不可用。将库作为 JAR 包含在类路径中,或使用 Maven 添加它,然后导入org.apache.commons.collections4.CollectionUtils

您也可以使用 lijst1.retainAll(lijst2) ,但您必须稍微不同地使用它,因为ArrayList#retainAll通过副作用起作用(也就是说,它将更新lijst1而不是返回新集合。

相关内容

  • 没有找到相关文章