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集合元素不重复的方法

相关推荐
丹牛Daniel3 分钟前
Java解决HV000183: Unable to initialize ‘javax.el.ExpressionFactory‘
java·开发语言·spring boot·tomcat·intellij-idea·个人开发
消失的旧时光-194321 分钟前
智能指针(三):实现篇 —— shared_ptr 的内部设计与引用计数机制
java·c++·c·shared_ptr
芒克芒克25 分钟前
深入浅出CopyOnWriteArrayList
java
癫狂的兔子30 分钟前
【Python】【机器学习】贝叶斯算法
python·机器学习
wuqingshun31415934 分钟前
说一下java的反射机制
java·开发语言·jvm
代码小书生36 分钟前
pillow,一个实用的 Python 库!
开发语言·python·pillow
A懿轩A38 分钟前
【Java 基础编程】Java 异常处理保姆级教程:try-catch-finally、throw/throws、自定义异常
java·开发语言·python
追求源于热爱!44 分钟前
记10,Gradio介绍
python
极客先躯1 小时前
高级java每日一道面试题-2025年7月14日-基础篇[LangChain4j]-如何集成开源模型(如 Llama、Mistral)?需要什么基础设施?
java·langchain·存储·计算资源·模型服务框架·网络 / 协议·java 依赖
黎雁·泠崖1 小时前
Java 包装类:基本类型与引用类型的桥梁详解
java·开发语言