最新公告
  • 欢迎您光临立业阁,本站秉承服务宗旨 履行“站长”责任,销售只是起点 服务永无止境!立即加入我们
  • java中List集合去重的方式有哪些_Java教程


    去重方式:

    一、通过set集合的特性,集合元素的唯一性

    public static List heavyListMethod01(List list){
            Set set=new HashSet(list);
            //Set set1=new TreeSet(list);
            List alist=new ArrayList();
            for (Object o:set) {
                alist.add(o);
            }
            return alist;
        }

    免费视频教程推荐:java视频

    利用set集合的特性,元素的唯一性 addAll(Collection c)

    public static List heavyListMethod02(List list){
            List newList=new ArrayList();
            newList.addAll(new HashSet(list));
            return newList;
        }

    二、通过list的方法contains方法去重

    public static List heavyListMethod03(List list){
            List alist=new ArrayList();
            for (Object o:list) {
              if(!(alist.contains(o))){
                alist.add(o);
              }
            }
            return alist;
        }

    三、通过遍历,然后用remove方法进行去掉重复的元素

    public static List heavyListMethod04(List<Object> list){
           for (int i=0;i<list.size()-1;i++){
               Object o =list.get(i);
               for (int j=i+1;j<list.size();j++){
                   if(o.equals(list.get(j))){
                       list.remove(j);
                       j--;
                   }
               }
           }
           return list;
        }

    四、(jdk1.8)调用stream方法将list转换为流,通过distinct(内部根据equals()方法)去掉流中重复的元素

    public static List heavyListMethod05(List<Object> list){
            list = list.stream().distinct().collect(Collectors.toList());
            return list;
        }

    测试验证:

    public static void main(String[] args) {
            List list=new ArrayList();
            list.add(1);
            list.add(2);
            list.add(5);
            list.add(2);
            list.add(3);
            list.add(1);
            list.add(4);
            List list1 =heavyListMethod01(list);
            System.out.println("1----"+list1);//[1, 2, 3, 4, 5]
            List list2 =heavyListMethod02(list);
            System.out.println("2----"+list2);//[1, 2, 3, 4, 5]
            List list3 =heavyListMethod03(list);
            System.out.println("3----"+list3);//[1, 2, 5, 3, 4]
            List list4 =heavyListMethod04(list);
            System.out.println("4----"+list4);//[1, 2, 5, 3, 4]
            List list5 =heavyListMethod05(list);
            System.out.println("5----"+list5);//[1, 2, 5, 3, 4]
        }

    相关文章教程推荐:java零基础入门

    以上就是java中List集合去重的方式有哪些的详细内容,更多请关注liyege.cn其它相关文章!

    常见问题FAQ

    免费下载或者VIP会员专享资源能否直接商用?
    本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担。更多说明请参考 VIP介绍。
    提示下载完但解压或打开不了?
    最常见的情况是下载不完整: 可对比下载完压缩包的与网盘上的容量,若小于网盘提示的容量则是这个原因。这是浏览器下载的bug,建议用百度网盘软件或迅雷下载。若排除这种情况,可在对应资源底部留言,或 联络我们.。
    找不到素材资源介绍文章里的示例图片?
    对于PPT,KEY,Mockups,APP,网页模版等类型的素材,文章内用于介绍的图片通常并不包含在对应可供下载素材包内。这些相关商业图片需另外购买,且本站不负责(也没有办法)找到出处。 同样地一些字体文件也是这种情况,但部分素材会在素材包内有一份字体下载链接清单。
    • 1162会员总数(位)
    • 111858资源总数(个)
    • 8本周发布(个)
    • 0 今日发布(个)
    • 242稳定运行(天)

    提供最优质的资源集合

    立即查看 了解详情
    冀ICP备19022365号-1 百度地图

    侵权联系邮箱[email protected]

    立业阁(www.liyege.cn)免费提供wordpress主题模板、dedecms模板、帝国cms模板、小说网站源码、电影网站源码以及网络技术分享,建站源码,小说模板,电影模板,网赚教程,VPS推荐