Stream流排序数组和List

  • 一、对象单字段排序
  • 二、多字段排序
  • 三、数组排序以及List<Integer\>排序

一、对象单字段排序

        List<People> peopleList = Lists.newArrayList();peopleList.add(new People(1, "小王", 5));peopleList.add(new People(1, "小李", 4));peopleList.add(new People(2, "小张", 3));peopleList.add(new People(2, "小皇", 2));peopleList.add(new People(2, "小刘", 1));//单字段排序peopleList =  peopleList.stream().sorted(Comparator.comparing(People::getJgId)).collect(Collectors.toList());log.info(peopleList.toString());//这里是根据userId 进行排序——降序排序  reversed()peopleList =  peopleList.stream().sorted(Comparator.comparing(People::getJgId).reversed()).collect(Collectors.toList());log.info(peopleList.toString());

二、多字段排序

        List<People> peopleList = Lists.newArrayList();peopleList.add(new People(1, "小王", 5));peopleList.add(new People(1, "小李", 4));peopleList.add(new People(2, "小张", 3));peopleList.add(new People(2, "小皇", 2));peopleList.add(new People(2, "小刘", 1));//这里是根据Id及jgId进行联合升序排序peopleList =  peopleList.stream().sorted(Comparator.comparing(People::getId).thenComparing(People::getJgId)).collect(Collectors.toList());log.info(peopleList.toString());//下面两个结果都是以Id降序jgId升序排序的结果,但是查询方式不同//先以id升序,升序结果进行id降序,再进行jgId升序peopleList =  peopleList.stream().sorted(Comparator.comparing(People::getId).reversed().thenComparing(People::getJgId)).collect(Collectors.toList());log.info(peopleList.toString());//先以id降序,再进行jgId升序 **推荐使用该种方式**peopleList =  peopleList.stream().sorted(Comparator.comparing(People::getId,Comparator.reverseOrder()).thenComparing(People::getJgId)).collect(Collectors.toList());log.info(peopleList.toString());//先以id升序,再进行jgId降序peopleList =  peopleList.stream().sorted(Comparator.comparing(People::getId).thenComparing(People::getJgId,Comparator.reverseOrder())).collect(Collectors.toList());log.info(peopleList.toString());

三、数组排序以及List<Integer>排序

先把数组转换成List对象再进行排序

  1. 我不停奔跑只为追赶当年被寄予厚望的自己。
  2. 错的每个题都是为了遇见对的人,对的每道题,都是为了遇见更好的自己。
  3. 低头是题海,抬头是前途。
  4. 我虽摘不下星星,但在我的宇宙里,你已然是我的—片银河系。
  5. 再苦一会儿,未来会很甜!
  6. 生活不可能像你想象得那么好但也不会像你想象得那么糟
  7. 很奇怪,我们不屑与他人为伍,却害怕自己与众不同。
  8. 我要悄无声息,成为你的遥不可及。
  9. 今日长缨在手,何时缚住苍龙。
  10. 真正的秘密不在黑夜之中,也不在巧妙的陷井里,而是藏在人的内心深处。

Stream流数组和对象List排序相关推荐

  1. json对象数组按对象属性排序

    //json对象数组按对象属性排序 function JsonSort(obj, field, sortby) {this.obj = obj;this.field = field;this.sort ...

  2. vue,js中json对象数组按对象属性排序(sort方法)根据英文首字母进行排序

    for (let i = 0; i < this.tableData.length; i++) {const itemList = this.tableData[i] as any;const ...

  3. JDK8新特性(三):集合之 Stream 流式操作

    1.Stream流由来 首先我们应该知道:Stream流的出现,主要是用在集合的操作上.在我们日常的工作中,经常需要对集合中的元素进行相关操作.诸如:增加.删除.获取元素.遍历. 最典型的就是集合遍历 ...

  4. JavaSE基础笔记——不可变集合简介、Stream流体系、异常处理

    1.不可变集合简介 不可变集合,就是不可被修改的集合. 集合的数据项在创建的时候提供,并且在整个生命周期中都不可改变.否则报错. 为什么要创建不可变集合? 如果某个数据不能被修改,把它防御性地拷贝到不 ...

  5. Stream 流 【学习笔记】Java 基础

    若文章内容或图片失效,请留言反馈. 部分素材来自网络,若不小心影响到您的利益,请联系博主删除. 写这篇博客旨在制作笔记,方便个人在线阅览,巩固知识,无其他用途. 学习视频 [黑马 Java 基础教程] ...

  6. jdk8新特性(接口新特性、lambda表达式、方法引用、函数式接口、Stream流)和单例设计模式

    1.单例设计模式 1.概念: 设计模式:使用固有的流程或方式设计出来的类接口.枚举等元素 2.设计原则: 1.私有化构造方法[private.protected] 2.类中创建最终对象[唯一不能被赋值 ...

  7. Java SE基础知识详解第[13]期—不可变集合、Stream流、异常

    写在前面: 每一个不曾起舞的日子,都是对生命的辜负. 希望看到这里的每一个人都能努力学习,不负韶华,成就更好的自己. 以下仅是个人学习过程中的一些想法与感悟,Java知识博大精深,作为初学者,个人能力 ...

  8. 不可变集合 Stream流 异常

    目录 创建不可变集合 如何创建不可变集合? Stream流 Stream流的概述 Stream流的获取 Stream流的常用API Stream流的综合应用 收集Stream流 异常处理 异常概述.体 ...

  9. Java笔记_16(不可变集合、Stream流、方法引用)

    Java笔记_16 一.创建不可变集合 1.1.创建不可变集合的应用场景 1.2.创建不可变集合的书写格式 二.Stream流 2.1.体验Stream流 2.2.Stream流的思想和获取Strea ...

最新文章

  1. 打造全球最大规模 Kafka 集群,Uber 的多区域灾备实践
  2. struts2和springmvc的区别
  3. HDU4514(非连通图的环判断与图中最长链)
  4. C++ #define详解
  5. 设计模式学习笔记——组合(Composite)模式
  6. hnu暑期实训之数塔 巧妙地设定一个偏移量
  7. 真狠,为了干掉 HTTP ,Spring团队又开源nohttp了!
  8. 音视频重新封装的流程
  9. the little schemer 笔记(1)
  10. SGI STL中内存池的实现 - 内脏坏了 - 博客园
  11. 关于TKK失败问题(亲测有用 超详细)
  12. 百度地图html多点标注,百度地图api 同时在地图上标注多个点 有问题 紧急求救...
  13. 使用Photoshop辅助线制作ps切片教程
  14. VUE实现前台图片 标注(添加矩形框)、放大、缩小、拖拽 -----个人记录
  15. Java base64转化成 inputStream
  16. Anaconda各个版本清华镜像站下载
  17. cocos creator动态加载DragonBones
  18. 树莓派html5播放器,QT+树莓派实现一个简单的播放器
  19. 湖北师范大学----操作系统实训(c语言)
  20. Oracle的dual是什么东西啊

热门文章

  1. (附源码)python个人健康自助记录查询系统 毕业设计 152015
  2. JAVA我的世界怎么弄TNT大陆_我的世界tnt大陆--大爆炸!创建方法分享!
  3. implicit declaration of function解决
  4. android通讯录首字母分类,通讯录获取首字母并以首字母归类返回
  5. 解决 Vmware虚拟机安装之后不显示网卡的问题
  6. 数据库实验之《表的连接和嵌套查询》
  7. Python实现批量重命名
  8. linux系统中tomcat变量,Linux下jdk以及tomcat的环境变量到底要设置在哪个文件中?在线等,希望大家踊跃发言!...
  9. 百度智能云对象存储BOS批量下载文件方法
  10. C语言编程用*号输出字母C的图案。