前言

简单记录一下 List中删除包含另外一个list的数据。

本文只是记录一下。

正文

下面是之前作者写的:

/***  这是目前我了解到速度最快的一种*/
    @SuppressWarnings("unchecked")
    public static List<String> listrem(List<String> listA,List<String> listB){
        HashSet hs1 = new HashSet(listA);
        HashSet hs2 = new HashSet(listB);
        hs1.removeAll(hs2);
        List<String> listC = new ArrayList<String>();
        listC.addAll(hs1);
        return listC;
    }

上面的方式测试ok

  1. 注意指了存储的是String
  2. 借用HashSet

PS: 如果存储的不是String,是你自定义的Bean类,一定要重写 equals 和 hashCode 方法

不过,如果你用java 1.8,可以直接用List.removeAll()方法。

参考文章

  1. JAVA 从一个List里删除包含另一个List的数据

相关文章

暂无评论

none
暂无评论...