CollectionUtils.retainAll方法不';t工作(Java)
我有两个数组列表。我想比较它们,得到公共元素的数量。或者只是一个包含公共元素的列表 当我尝试使用CollectionUtils.retainAll执行此操作时,我认为它不知道此方法 它说它找不到“Variable CollectionUtils”符号,所以它也不知道该方法?或者我做错了什么 我的代码:CollectionUtils.retainAll方法不';t工作(Java),java,arraylist,compare,Java,Arraylist,Compare,我有两个数组列表。我想比较它们,得到公共元素的数量。或者只是一个包含公共元素的列表 当我尝试使用CollectionUtils.retainAll执行此操作时,我认为它不知道此方法 它说它找不到“Variable CollectionUtils”符号,所以它也不知道该方法?或者我做错了什么 我的代码: ArrayList<String> lijst1 = new ArrayList<String>(Arrays.asList(inhoud1.split("AT")));
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);
ArrayList lijst1=新的ArrayList(Arrays.asList(inhoud1.split(“AT”));
ArrayList lijst2=新的ArrayList(Arrays.asList(inhoud2.split(“AT”));
ArrayList matches=CollectionUtils.retainal(lijst1,lijst2);
如果事情很简单,我很抱歉。它可能是。CollectionUtils类是Apache Commons Collections库的一部分,不是Java API的一部分,因此默认情况下不可用。 将库作为JAR包含在类路径中,或者使用Maven添加它,然后导入
org.apache.commons.collections4.CollectionUtils
您也可以使用
lijst1.retainal(lijst2)
,但您必须稍微不同地使用它,因为ArrayList#retainal
会产生副作用(也就是说,它会更新lijst1
,而不是返回新的集合。您是如何导入CollectionUtils
?