我正在尝试创建一种方法来比较两个数组列表buttonresourceIds和buttonresourceIds2。我想对它们进行比较,看看它们是否共享按钮元素。然后返回它们共享的元素的“数量”。
ArrayList<String>> buttonresourceIds = new ArrayList<String>>();
ArrayList<String>> buttonresourceIds2 = new ArrayList<String>>();
for(int i=0;i<buttonresourceIds.size();i++){
for(int j=0;j<buttonresourceIds2.size();j++){
if(buttonresourceIds.contains(buttonresourceIds2.get(j))){
System.out.println("Exist : "+buttonresourceIds2.get(j));
}else{
System.out.println("Not Exist : "+buttonresourceIds2.get(j));
}
}
}
它给了我结果,但循环不断重复。我错过了什么吗?
最佳答案
您不需要两个循环来执行此操作,一个循环就足以修复它
ArrayList<String>> buttonresourceIds = new ArrayList<String>>();
ArrayList<String>> buttonresourceIds2 = new ArrayList<String>>();
int common=0;
for(int j=0;j<buttonresourceIds2.size();j++){
if(buttonresourceIds.contains(buttonresourceIds2.get(j))){
System.out.println("Exist : "+buttonresourceIds2.get(j));
common++;
}else{
System.out.println("Not Exist : "+buttonresourceIds2.get(j));
}
}
return common;
关于java - 如何使用java比较两个arraylist元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45143886/