从对象列表Java 8中获取具有最大日期属性的对象

问题描述

并且Contact类不应该总是使用lastUpdated变量来比较实例

因此,每当要按实例的lastUpdated属性比较多个实例时,就必须提供一个自定义比较器,因为这意味着该类在默认情况下无法与此字段进行比较。

Comparator<Contact> cmp = Comparator.comparing(Contact::getLastUpdated);

如您所知,您可以使用Collections.max或Stream API来根据该字段获取max实例,但是您不可避免地要编写自定义比较器。

解决方法

我有一类称为Contact具有Date lastUpdated;可变的。

我想Contact退出List<Contact>具有最大lastUpdated变量的。

我知道可以通过编写一个自定义比较器并使用来完成此操作Collections.max,但是我想知道在Java
8中是否可以通过使用自定义比较器来完成此操作,因为我只想使用一个最长日期仅出现在我的代码中的某个位置,并且Contact该类不应始终使用lastUpdated变量来比较实例。

猜你在找的技术问答相关文章

如何检查配对的蓝牙设备是打印机还是扫描仪(Android)
是否允许实体正文进行HTTP DELETE请求?
如何将ZipInputStream转换为InputStream?
java.util.logging Java 8中的变量
PowerMockito.doReturn返回null
Java中的RESTful调用
Swing / Java:如何正确使用getText和setText字符串
特殊字符和重音字符
Android Studio中的ndk.dir错误
错误“找不到主类”