Java 获取两个 List 集合相同索引不同元素 - 代码示例
"Java 获取两个 List 集合相同索引不同元素 - 代码示例"\n\n本篇文章将介绍如何使用 Java 代码获取两个 List 集合中相同索引位置但元素不同的元素。文章包含详细的代码示例和解释,并提供最终的输出结果。\n\n问题描述:\n\n给定两个 List 集合,例如:\n\n\nList<Integer> list1 = new ArrayList<>();\nlist1.add(1);\nlist1.add(1);\nlist1.add(1);\nlist1.add(2);\nlist1.add(2);\nlist1.add(2);\nlist1.add(3);\nlist1.add(3);\nlist1.add(3);\n\nList<Integer> list2 = new ArrayList<>();\nlist2.add(1);\nlist2.add(1);\nlist2.add(2);\nlist2.add(1);\nlist2.add(2);\nlist2.add(2);\nlist2.add(3);\nlist2.add(3);\nlist2.add(3);\n\n\n要求找出两个集合中相同索引位置但元素不同的元素。\n\n解决方案:\n\n可以使用一个循环遍历两个 List 集合,比较相同索引位置的元素是否相同,如果不同则将其添加到一个新的 List 集合中,最后返回这个新的 List 集合。\n\n代码示例:\n\njava\nimport java.util.ArrayList;\nimport java.util.List;\n\npublic class Main {\n public static void main(String[] args) {\n List<Integer> list1 = new ArrayList<>();\n list1.add(1);\n list1.add(1);\n list1.add(1);\n list1.add(2);\n list1.add(2);\n list1.add(2);\n list1.add(3);\n list1.add(3);\n list1.add(3);\n\n List<Integer> list2 = new ArrayList<>();\n list2.add(1);\n list2.add(1);\n list2.add(2);\n list2.add(1);\n list2.add(2);\n list2.add(2);\n list2.add(3);\n list2.add(3);\n list2.add(3);\n\n List<Integer> result = getDifferentElements(list1, list2);\n System.out.println(result);\n }\n\n public static List<Integer> getDifferentElements(List<Integer> list1, List<Integer> list2) {\n List<Integer> result = new ArrayList<>();\n int size = Math.min(list1.size(), list2.size());\n\n for (int i = 0; i < size; i++) {\n if (!list1.get(i).equals(list2.get(i))) {\n result.add(list1.get(i));\n }\n }\n\n return result;\n }\n}\n\n\n输出结果:\n\n[1, 2]
原文地址: https://www.cveoy.top/t/topic/pZt6 著作权归作者所有。请勿转载和采集!