java - 如何使用java比较两个arraylist元素

标签 java for-loop arraylist

我正在尝试创建一种方法来比较两个数组列表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/

相关文章:

java - 为 java 1.6 实现泛型

javascript - 将数组迭代到自定义网格中

java - 逐行打印 arraylist 中的项目以获取列中的特定索引值

android - 如何在 SharedPreferences 中存储 ArrayList<HashMap<String, String>> ?

java - 为什么我在 TicTacToe 中用于计算 X 和 O 获胜的变量在每次测试中都会有所不同? ( java )

java - 多个 Camel 路由会导致线程数量非常多吗?

mysql - 使用mysql程序计算20-50之间的偶数和奇数总数

Python - 有什么方法可以避免在 for 循环中相互包含多个 if 语句?

java - 将字符串与我的 ArrayList 进行比较

java - react 器选择接收器/处理器