对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

最新文章

  1. godep 包管理工具
  2. 有用的css片段
  3. 【visio 2007操作】
  4. Silverlight自定义控件开发:温度计
  5. Android intent传递list或对象
  6. POJ2676Sudoku(类似于八皇后)
  7. COURSES(poj 1469)
  8. springMVC+MyBatis+Spring+maven 整合(1)
  9. &quot;No appenders found for logger&quot; and &quot;Please configure log4j properly&quot;
  10. swf上传文件
  11. 工作经常使用的SQL整理,实战篇(一)
  12. Windows 2008 配置ASP+ACCESS环境(亲身体会)
  13. 转 Windows 7设置定时自动执行任务方法
  14. [板子]Floyd&amp;Dijkstra
  15. Docker(八):Docker端口映射
  16. office 2013补丁包更新
  17. 给查询出的SQL记录添加序号列,解决方法有以下两种
  18. Pycharm去掉项目所有 # 注释
  19. Numpy 数据类型
  20. Shell 变量知识

热门文章

  1. 《Effective C++》资源管理:条款13-条款17
  2. CodeForces 113B Petr#
  3. Ubuntu中MySql的启动与关闭
  4. Linux基础学习(16)--备份与恢复
  5. Maven自动部署jar包到Neuxs
  6. 我对领域驱动设计(DDD)的学习成果
  7. rmse均方根误差
  8. python----函数的动态传参
  9. Qt5 入门
  10. 洛谷p1586四方定理题解