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

相关推荐
CodeToGym12 小时前
【Java 办公自动化】Apache POI 入门:手把手教你实现 Excel 导入与导出
java·apache·excel
凡人叶枫12 小时前
C++中智能指针详解(Linux实战版)| 彻底解决内存泄漏,新手也能吃透
java·linux·c语言·开发语言·c++·嵌入式开发
JMchen12313 小时前
Android后台服务与网络保活:WorkManager的实战应用
android·java·网络·kotlin·php·android-studio
阔皮大师13 小时前
INote轻量文本编辑器
java·javascript·python·c#
小法师爱分享13 小时前
StickyNotes,简单便签超实用
java·python
深蓝电商API13 小时前
处理字体反爬:woff字体文件解析实战
爬虫·python
qq_2975746713 小时前
Linux 服务器 Java 开发环境搭建保姆级教程
java·linux·服务器
开源技术13 小时前
Claude Opus 4.6 发布,100万上下文窗口,越贵越好用
人工智能·python
金牌归来发现妻女流落街头13 小时前
【从SpringBoot到SpringCloud】
java·spring boot·spring cloud
毅炼13 小时前
Java 基础常见问题总结(4)
java·后端