美文网首页
JAVA8新特性lambda表达式(时间为空排序)

JAVA8新特性lambda表达式(时间为空排序)

作者: 不见当年三月花 | 来源:发表于2019-08-20 10:11 被阅读0次

对象时间排序,如果时间为空放到最后


public class DataVo {

    /**
     * ID
     */
    private String id;

    /**
     * 时间
     */
    private Date date;
}

 public static void main(String[] args) {

        List<DataVo> dataVos = new ArrayList<>();
        DataVo dataVo1 = new DataVo();
        dataVo1.setDate(new Date());
        dataVo1.setId("1");
        dataVos.add(dataVo1);

        DataVo dataVo2 = new DataVo();
        dataVo2.setId("2");
        dataVos.add(dataVo2);

        DataVo dataVo3 = new DataVo();
        dataVo3.setId("3");
        dataVo3.setDate(new Date());
        dataVos.add(dataVo3);

        dataVos = dataVos.stream().sorted(Comparator.comparing(d -> d.getDate(), Comparator.nullsLast(Date::compareTo))).collect(Collectors.toList());

        dataVos.forEach(data -> System.out.println(data));
    }
  • 结果
DataVo{id='1', date=Tue Aug 20 10:07:49 CST 2019}
DataVo{id='3', date=Tue Aug 20 10:07:49 CST 2019}
DataVo{id='2', date=null}

相关文章

  • Java 8、9 语言新特性

    Java语言新特性 Java8 Java 8 新特性 Lambda 表达式 Lambda表达式(也叫做闭包)是Ja...

  • java8 新特性

    java8 新特性 1 Lambda表达式 lambda 是一个匿名函数, lambda 表达式基本语法: jav...

  • java8

    现代化 Java - Java8 指南 JAVA8新特性(吐血整理) 理解 Lambda 表达式

  • Lambda表达式和函数式接口

    初识lambda表达式 lambda表达式是Java8的新特性,可以将lambda表达式看成是精简语法的匿名内部类...

  • Java8 新特性之 Lambda 表达式

    Lambda表达式 lambda表达式是java8给我们带来的几个重量级新特性之一,借用lambda表达式,可以让...

  • Lambda的基础使用

    Lambda是java8出的新特性,之前很少用Lambda表达式写代码,现在慢慢习惯用Lambda表达式,并且记得...

  • Lambda表达式

    内容整理自bilibili 参考链接 一、lambda表达式的简介 lambda表达式是java8添加的新特性; ...

  • JAVA8新特性lambda表达式(时间为空排序)

    对象时间排序,如果时间为空放到最后 结果

  • Java8 新增了非常多的特性

    新特性Java8 新增了非常多的特性,我们主要讨论以下几个: Lambda 表达式 − Lambda允许把函数作为...

  • 03_Java8_Lamda表达式学习

    Java8 的新特性:Lambda表达式、强大的 Stream API、全新时间日期 API、Concurrent...

网友评论

      本文标题:JAVA8新特性lambda表达式(时间为空排序)

      本文链接:https://www.haomeiwen.com/subject/oqeusctx.html