Java中List高效去重

直接上代码:

private static void DuplicateRemoval(List<Integer> ioList)
{
    LinkedHashSet<Integer> tmpSet = new LinkedHashSet<Integer>(ioList.size());
    tmpSet.addAll(ioList);
    ioList.clear();
    ioList.addAll(tmpSet);
}

原理是利用了LinkedHashSet不能添加重复的数据。
当两个List需要去重合并的时候,可以类似的先addList,再DuplicateRemoval。
这种方法比使用List的contains效率高几十倍。

你可能感兴趣的:(Java)