Java - List 去重,获取唯一值,分组列出所属对应集合

问题:List 去重,获取唯一值,分组列出所属对应集合

方案一:这个不需要额外的内存占用

java 复制代码
  //遍历后判断赋给另一个list集合
     public static void main(String[] args){
         List<String> list  =   new  ArrayList<String>(); 
         list.add("aaa");
         list.add("bbb");
         list.add("aaa");
         list.add("aba");
         list.add("aaa");

         List<String> newList = new  ArrayList<String>(); 
         for (String cd:list) {
            if(!newList.contains(cd)){
                newList.add(cd);
            }
        }
         System.out.println( "去重后的集合: " + newList); 
      }

方案二:会占用额外的内存空间,毕竟有一个 HashSet 集合,元素顺序会是原来的顺序

java 复制代码
//set集合去重,不打乱顺序
    public static void main(String[] args){
         List<String> list  =   new  ArrayList<String>(); 
         list.add("aaa");
         list.add("bbb");
         list.add("aaa");
         list.add("aba");
         list.add("aaa");

         Set set = new  HashSet(); 
         List newList = new  ArrayList(); 
         for (String cd:list) {
            if(set.add(cd)){
                newList.add(cd);
            }
        }
         System.out.println( "去重后的集合: " + newList); 
      }

参考链接

1. java实现list集合元素不重复的方法

相关推荐
一木 之林6 分钟前
五、C++新特性、关键字与编译原理
java·jvm·算法
大模型丫丫9 分钟前
FastAPI 入门指南:从零开始构建高性能 Python API
开发语言·python·fastapi
han_hanker10 分钟前
新手公司项目实战
java·maven
vHelios16 分钟前
【电商项目】商品搜索开发复盘(3):搜索与封装实现逻辑思考与编写
java
叫我:松哥17 分钟前
基于flask图书数据管理系统,技术栈flask+MySQL+boostrap
python·mysql·flask
wangchen_020 分钟前
PyTorch
人工智能·pytorch·python
AI人工智能+电脑小能手35 分钟前
大白话说Java设计模式-37-中介者模式(源码剖析篇)
java·设计模式·线程池·中介者模式·源码分析·executor·applicationeventmulticaster
卷无止境44 分钟前
Python的contextlib与 FastAPI 中的上下文管理
后端·python·fastapi
焦虑的说说1 小时前
虚拟线程浅析
java