检测网站为什么打不开了,珠海个人建站模板,网站建设哪家最专业,做公司企业网站标准尺寸文章目录 Java8 Lambda.stream.sorted() 方法使用浅析分享sorted() 重载方法一升序降序 sorted() 重载方法二升序降序多字段排序 mock代码 Java8 Lambda.stream.sorted() 方法使用浅析分享 本文主要分享运用 Java8 中的 Lambda.stream.sorted方法排序的使用#xff01; sorted… 文章目录 Java8 Lambda.stream.sorted() 方法使用浅析分享sorted() 重载方法一升序降序 sorted() 重载方法二升序降序多字段排序 mock代码 Java8 Lambda.stream.sorted() 方法使用浅析分享 本文主要分享运用 Java8 中的 Lambda.stream.sorted方法排序的使用 sorted() 重载方法一
sorted()默认自然排序
升序 Testpublic void testSorted1() {ListInteger list Lists.newArrayList(2,5,3,4,1,2,6,7,9,1);ListInteger collect list.stream().sorted().collect(Collectors.toList());System.out.println(JSONObject.toJSONString(collect));}运行结果 降序
倒序需要结合 Comparator.reverseOrder() 方法使用 Testpublic void testSorted1() {ListInteger list Lists.newArrayList(2,5,3,4,1,2,6,7,9,1);ListInteger collect list.stream().sorted(Comparator.reverseOrder()).collect(Collectors.toList());System.out.println(JSONObject.toJSONString(collect));}运行结果
sorted() 重载方法二
sorted(Comparator? super T comparator)通过创建 Comparator 实例按照指定规则升/降序排序元素。
升序
按生日升序 Testpublic void testSorted2() {ListStudent list this.getStudent();ListStudent collect list.stream().sorted(Comparator.comparing(Student::getBirthday)).collect(Collectors.toList());System.out.println(JSONObject.toJSONString(collect));}降序
按生日降序 Testpublic void testSorted2() {ListStudent list this.getStudent();ListStudent collect list.stream().sorted(Comparator.comparing(Student::getBirthday, Comparator.reverseOrder())).collect(Collectors.toList());System.out.println(JSONObject.toJSONString(collect));} 多字段排序
排序说明 生日升序 学号降序; Testpublic void testSorted2() {ListStudent list this.getStudent();ListStudent collect list.stream().sorted(Comparator.comparing(Student::getBirthday).thenComparing(Student::getNum, Comparator.reverseOrder())).collect(Collectors.toList());System.out.println(JSONObject.toJSONString(collect));}运行结果
mock代码
student对象
AllArgsConstructor
NoArgsConstructor
Data
public class Student {/*** 姓名*/private String name;/*** 年龄*/private Integer age;/*** 生日*/JSONField(formatyyyy-MM-dd HH:mm:ss)private Date birthday;/*** 学号*/private Integer num;}mock数据
public ListStudent getStudent() {return Lists.newArrayList(new Student(小张, 17, DateUtil.parse(2006-10-03 15:18:56), 11),new Student(小李, 15, DateUtil.parse(2008-03-19 02:18:56), 5),new Student(小李, 15, DateUtil.parse(2008-03-19 02:18:56), 2),new Student(小王, 16, DateUtil.parse(2007-02-21 22:18:56), 29));}
eUtil.parse(2008-03-19 02:18:56), 2),new Student(小王, 16, DateUtil.parse(2007-02-21 22:18:56), 29));}感 谢 各 位 大 佬 的 阅 读随 手 点 赞日 薪 过 万~