java ArrayList去重

对list集合中的重复值进行处理,大部分是采用两种方法,

  一种是用遍历list集合判断后赋给另一个list集合,

  另一种是用赋给set集合再返回给list集合。 

 

方法1:set集合去重,不打乱顺序

复制代码
List<String> list = new ArrayList<String>();
list.add("aaa");
list.add("bbb");
list.add("aaa");
list.add("aba");
list.add("aaa");

//set集合去重,不打乱顺序
Set<String> set = new HashSet<String>();
List<String> newList = new ArrayList<String>();
for (String cd : list) {
    if (set.add(cd)) {
        newList.add(cd);
    }
}
System.out.println("去重后的集合: " + newList);
复制代码

方法2:遍历后判断赋给另一个list集合

//遍历后判断赋给另一个list集合
List<String> newList = new ArrayList<String>();
for (String cd : list) {
    if (!newList.contains(cd)) {
        newList.add(cd);
    }
}
System.out.println("去重后的集合: " + newList);

方法3:set去重

//set去重
Set<String> set = new HashSet<String>();
List<String> newList = new ArrayList<String>();
set.addAll(list);
newList.addAll(set);
System.out.println("去重后的集合: " + newList);

方法4:set去重(代码缩减为一行)

//set去重(缩减为一行)
List<String> newList = new ArrayList<String>(new HashSet<String>(list));
System.out.println("去重后的集合: " + newList);

方法5:去重并且按照自然顺序排列

//去重并且按照自然顺序排列
List<String> newList = new ArrayList<String>(new TreeSet<String>(list));
System.out.println("去重后的集合: " + newList);

 

文章来源:http://blog.csdn.net/cs6704/article/details/50158373

posted @   草木物语  阅读(11712)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律
点击右上角即可分享
微信分享提示