java 检查列表中的重复项

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java 检查列表中的重复项相关的知识,希望对你有一定的参考价值。

    private void checkDuplicates(List<? extends Object> input){
        Map<Object, Long> countMap = new HashMap<>();
        for (Object o : input){
            if (countMap.containsKey(o)){
                countMap.put(o, countMap.get(o) + 1L);
            } else {
                countMap.put(o, 1L);
            }
        }

        StringBuilder sb = new StringBuilder();
        long i = 0L;
        for (Map.Entry<Object, Long> entry : countMap.entrySet()){
            if (entry.getValue() > 1L){
                sb.append(entry.getKey().getClass().getSimpleName()).append(entry.getKey()).append(": ").append(entry.getValue());
                i++;
            }
        }
        if (i > 0L) {
            LOGGER.info("Duplicates found: (" + i + " duplicates /" + input.size() + " items)\n" + sb.toString());
        } else {
            LOGGER.info("No duplicates found in " + input.size() + " items  :-)");
        }
    }

以上是关于java 检查列表中的重复项的主要内容,如果未能解决你的问题,请参考以下文章

删除列表中的重复项

使用 Python 删除对象列表中的重复项

删除列表中的重复项

如何在java中的对象列表中查找重复项

如何检查平面列表中是不是有重复项?

Java 去除List列表中的重复项