4 回答
TA贡献1804条经验 获得超2个赞
一种方法是,将两个列表中的元素放入Set
,检查是否set.size()
与list1.size()+list2.size()
diff将是重复元素的计数。
TA贡献1818条经验 获得超8个赞
试试这个 :
ArrayList intersection = new ArrayList<>(list1);
intersection.retainAll(list2);
相交处将包含共同要素
TA贡献1848条经验 获得超2个赞
使用以下代码:
Set<String> set = new HashSet<>(list1);
set.addAll(list2);
System.out.println(((list1.size() + list2.size()) - set.size()));
TA贡献1805条经验 获得超9个赞
我不知道这是否是最有效的方法,但我会做这样的事情:
public static int getCommonValues() {
int values = 0;
if(list1 != null && list2 != null) {
Iterator it = list1.iterator();
while(it.hasNext()) {
String value = it.next();
Iterator it2 = list2.iterator();
while(it2.hasNext()) {
String value2 = it2.next();
if(value2 == value) {
values = values + 1;
break;
}
}
}
}
return values;
}
添加回答
举报