Jdk8对集合按照元素的属性进行排序

Collections.sort(listJdk7,(s1,s2) ->s1.compareTo(s2));

根据元素属性,进行去重操作,不过这个会进行排序

List<Person> unique = persons.stream().collect( Collectors.collectingAndThen( Collectors.toCollection(() -> new TreeSet<>(Comparator.comparing(Person::getName))), ArrayList::new) );

如果不想排序,只是单纯去重,则可以:

HashMap<String,SchoolServiceModel>schoolServiceListUniqueMap=new HashMap<>();

schoolServiceModels.forEach(mo->{

if(!schoolServiceListUniqueMap.containsKey(mo.getDisplayAppName())){

schoolServiceListUniqueMap.put(mo.getDisplayAppName(),mo);

}

});

List<SchoolServiceModel> schoolServiceListUnique = schoolServiceListUniqueMap.values().stream()

.collect(Collectors.toList());

list的集合转数组:

List<String>strList=newArrayList<String>();

strList.add("aa");

strList.add("bb");

Object[]objs=strList.toArray();

String [] strs = (String[])strList.toArray(new String[0]);

注意:如果toArray中不传大小,则会报错

Exception in thread "main" java.lang.ClassCastException: [Ljava.lang.Object; cannot be cast to [Ljava.lang.String;

list集合去重和排序相关推荐

  1. java集合set不能去重_java集合去重和排序

    1.去重 1.1 for循环去重 for (int i = 0; i list.remove(j); j--; } } } 测试结果: ,感觉还是有点用的,感觉循环次数太多了,不推荐使用. List ...

  2. Java Stream 流集合去重排序

    文章目录 1. list去重 2. 根据对象中的某个字段进行list去重 3. 排序 4. 排序并去重 1. list去重 List<String> list = new ArrayLis ...

  3. TreeSet集合(自然排序和比较器排序)

    TreeSet集合 自然排序和比较器排序 ​ 当指执行插入排序.希尔排序.归并排序等算法时,比较两个对象"大小"的比较操作.我们很容易理解整型的 i>j 这样的比较方式,但当 ...

  4. c++中std::set自定义去重和排序函数

    c++中的std::set,是基于红黑树的平衡二叉树的数据结构实现的一种容器,因为其中所包含的元素的值是唯一的,因此主要用于去重和排序.这篇文章的目的在于探讨和分享如何正确使用std::set实现去重 ...

  5. 面试官:如何实现 List 集合去重?

    作者 | 磊哥 来源 | Java面试真题解析(ID:aimianshi666) 转载请联系授权(微信ID:GG_Stone) 本文已收录<Java常见面试题>系列,开源地址:https: ...

  6. python数据库去重_python redis连接 有序集合去重的代码

    python redis连接 有序集合去重的代码如下所述: # -*- coding: utf-8 -*- import redis from constant import redis_ip, re ...

  7. Python--几种set集合去重的方法

    1.set集合的去重机制 ps: set集合在内部执行时,首先会先对对象执行hash算法,存储到内存空间, (但在同一次运行过程中两个值相等的对象hash值一样)所以如果两个对象值相等,这时会做出第二 ...

  8. java中给对象的List集合去重的几种方法(Lambda)

    java中给对象的List集合去重的几种方法 前言 一.lambda表达式的去重方式 二.Stream API中的collect去重方法 三.Stream API 中的distinct方法去重 前言 ...

  9. C++数组去重与排序

    一.整型数组去重与排序: [题目描述] 明明想在学校中请一些同学一起做一项问卷调查,为了实验的客观性,他先用计算机生成了N个1到1000之间的随机整数(N≤100),对于其中重复的数字,只保留一个,把 ...

  10. 【Java】List集合去重的方式

    List集合去重的方式 方式一:利用TreeSet集合特性排序+去重(有序) 方式二:利用HashSet的特性去重(无序) 方式三:利用LinkedHashSet去重(有序) 方式四:迭代器去重(无序 ...

最新文章

  1. 数字三角形问题 (动态规划初步)
  2. Linux网络编程 之 套接字(四)
  3. python学习之subprocess模块
  4. idea自动构建web项目_构建Web应用程序以自动执行系统管理员任务
  5. 9. Document getElementsByName() 方法
  6. Letters[Codeforces-43B]
  7. SunFMEA-基于AIAG-VDA-FMEA的风险管理工具
  8. QT6.1.2下载和安装教程
  9. midi是计算机合成音乐文件,多媒体音频详解.ppt
  10. Windows平台好用但小众软件推荐
  11. OOAD 3 迭代、进化和敏捷(Iterative,Evolutionary,and Agile)
  12. 一回来又恢复了往日的无聊生活
  13. 保密单位 计算机维修保密协议,计算机维修保密协议.doc
  14. hadoop的小疑问:Map执行未结束便开始执行Reduce操作?
  15. R语言epiDisplay包的kap函数计算配对列联表的计算一致性的比例以及Kappa统计量的值(总一致性、期望一致性)、使用xtabs函数生成二维列联表、使用wttable参数设置权重表参数为w2
  16. VMware(1):MacOS虚拟机无法设置自动调整大小(已解决)
  17. 肖锰:浪潮GS开发平台学习札记(一)——服务器端安装
  18. Daily Study
  19. 基于FFMpeg实现音频mp3/aac/wav解码
  20. mac鼠标滚动方向自然问题

热门文章

  1. (已成功)windows下,VS2012+Qt5.5.1的安装、路径配置、项目配置(其它版本可参考)
  2. html大作业【NBA篮球介绍 22个页面】学生网页设计源码
  3. jqueryUI对应jquery版本
  4. C# PDF 静默打印
  5. 网易云IM(即时通讯) 互动直播集成
  6. matlab导入vgg16,简单导入VGG16
  7. excel制作跨职能流程图_一款在线版流程图工具亿图图示
  8. matlab遗传算法求解TSP旅行商问题
  9. 线程的三种创建方式以及区别
  10. Ubuntu 安装QT