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

时间:2017-01-26 21:50:29

标签: java arraylist compare

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

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

它说它找不到符号'Variable CollectionUtils',所以它也不知道方法?或者我错了什么?

我的代码:

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);

对不起,如果这很简单。它可能会。

1 个答案:

答案 0 :(得分:1)

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

你也可以使用lijst1.retainAll(lijst2),但是你必须稍微区别地使用它,因为ArrayList#retainAll会产生副作用(也就是说,它会更新lijst1而不是返回一个新的系列。