Java 实例 - 查找数组中的重复元素与次数

Java实例大全   

利用map集合key不可重复原理,获取数组中重复元素

    @Test
    public void test7(){
        int[] array = {1, 2, 5, 5, 5, 5, 6, 6, 7, 2, 9, 2};
        Map map = findRepetition(array);
        if(map!=null){
            for (Map.Entry entry : map.entrySet()){
                if(entry.getValue()>1){
                    System.out.println("元素 "+entry.getKey()+" 重复出现"+entry.getValue()+"次");
                }else{
                    System.out.println("元素 "+entry.getKey()+" 只出现1次 无重复");
                }
            }
        }
    }

    private Map findRepetition(int[] arr){
        Map map = new HashMap<>();
        if(arr == null || arr.length <= 0){
            return null;
        }
        for(int i = 0; i < arr.length; i ++){
            if(map.containsKey(arr[i])){
                map.put(arr[i], map.get(arr[i])+1);
            }else{
                map.put(arr[i], 1);
            }
        }
        return map;
    }

结果:

元素 1 只出现1次 无重复
元素 2 重复出现3次
元素 5 重复出现4次
元素 6 重复出现2次
元素 7 只出现1次 无重复
元素 9 只出现1次 无重复

 

你可能感兴趣的:([java])