Java 通过比较器排序时出现空指针异常(通过lambda表达式)

Java 通过比较器排序时出现空指针异常(通过lambda表达式),java,lambda,java-8,nullpointerexception,comparator,Java,Lambda,Java 8,Nullpointerexception,Comparator,我使用比较器lambda表达式对长格式的日期进行排序。 Comparator的comparingLong方法用于按长格式(毫秒)对日期对象列表进行排序。 它对日期进行了正确的排序,但问题是每当date对象中遇到空值时,它就会中断并抛出空指针异常 您能帮我避免这种情况吗?或者使用lambda表达式中的任何检查,因为我不知道如何在lamda表达式中使用此检查,或者是否有其他方法避免这种异常 下面使用lambda表达式。 我们将如何在这里强制执行空检查,以便所有空日期值都位于列表的末尾,并且代码不会中

我使用比较器lambda表达式对长格式的日期进行排序。 Comparator的
comparingLong
方法用于按长格式(毫秒)对日期对象列表进行排序。 它对日期进行了正确的排序,但问题是每当date对象中遇到空值时,它就会中断并抛出空指针异常

您能帮我避免这种情况吗?或者使用lambda表达式中的任何检查,因为我不知道如何在lamda表达式中使用此检查,或者是否有其他方法避免这种异常

下面使用lambda表达式。 我们将如何在这里强制执行空检查,以便所有空日期值都位于列表的末尾,并且代码不会中断

myList.sort(Comparator.comparingLong(e -> e.getBirthDate().getTime()));
e ->null ==   e.getBirthDate()? LONG.MINIMUM : e.getBirthDate().getTime()