java怎么找出集合中重复的元素

   2025-02-15 4400
核心提示:可以使用两种方法来找出集合中重复的元素。方法一:使用嵌套循环遍历集合,比较每个元素是否与其他元素重复。import java.util.A

可以使用两种方法来找出集合中重复的元素。

方法一:使用嵌套循环遍历集合,比较每个元素是否与其他元素重复。

import java.util.ArrayList;import java.util.HashSet;import java.util.List;import java.util.Set;public class Main {    public static void main(String[] args) {        List<Integer> list = new ArrayList<>();        list.add(1);        list.add(2);        list.add(3);        list.add(2);        list.add(4);        list.add(1);                Set<Integer> duplicates = new HashSet<>();        for (int i = 0; i < list.size() - 1; i++) {            for (int j = i + 1; j < list.size(); j++) {                if (list.get(i).equals(list.get(j))) {                    duplicates.add(list.get(i));                }            }        }                System.out.println("重复的元素:" + duplicates);    }}

输出结果为:

重复的元素:[1, 2]

方法二:使用HashMap统计每个元素的出现次数,然后找出出现次数大于1的元素。

import java.util.ArrayList;import java.util.HashMap;import java.util.List;import java.util.Map;public class Main {    public static void main(String[] args) {        List<Integer> list = new ArrayList<>();        list.add(1);        list.add(2);        list.add(3);        list.add(2);        list.add(4);        list.add(1);                Map<Integer, Integer> countMap = new HashMap<>();        for (Integer element : list) {            countMap.put(element, countMap.getOrDefault(element, 0) + 1);        }                List<Integer> duplicates = new ArrayList<>();        for (Map.Entry<Integer, Integer> entry : countMap.entrySet()) {            if (entry.getValue() > 1) {                duplicates.add(entry.getKey());            }        }                System.out.println("重复的元素:" + duplicates);    }}

输出结果为:

重复的元素:[1, 2]

 
 
更多>同类维修知识
推荐图文
推荐维修知识
点击排行
网站首页  |  关于我们  |  联系方式  |  用户协议  |  隐私政策  |  网站留言