Java 如何在hashmap中获取包含最新LocalDate的对象
我在DVDs对象中有一个名为Java 如何在hashmap中获取包含最新LocalDate的对象,java,lambda,hashmap,Java,Lambda,Hashmap,我在DVDs对象中有一个名为releaseDate的属性,它是一个字符串 getReleaseDateFormatted()是我的DVD对象中的一个方法,我将把字符串解析为LocalDate 我假设下面的代码将所有releaseDate组合在LocalDate类型中?我需要找到这个小组的最新日期 @Override public DVDs getOldestDVD() throws PersistenceException { return dvdMap.values()
releaseDate
的属性,它是一个字符串
getReleaseDateFormatted()
是我的DVD对象中的一个方法,我将把字符串
解析为LocalDate
我假设下面的代码将所有releaseDate
组合在LocalDate
类型中?我需要找到这个小组的最新日期
@Override
public DVDs getOldestDVD() throws PersistenceException {
return dvdMap.values()
.stream()
.collect(Collectors.groupingBy(d -> d getReleaseDateFormatted()))
}
这个问题是非常模糊和混乱的,但如果我的理解是正确的,你不应该需要任何流。试试这个:
return Collections.max(dvdMap.values(),
Comparator.comparing(DVDs::getReleaseDateFormatted));
这个问题是非常模糊和混乱的,但如果我的理解是正确的,你不应该需要任何流。试试这个:
return Collections.max(dvdMap.values(),
Comparator.comparing(DVDs::getReleaseDateFormatted));
这是一个令人困惑的问题。如果你能加入更多的上下文,那会有帮助。你为什么要假设?你为什么不测试你的代码呢?这是有道理的,但这与“最老”的意思相反。为什么你有一个名为
DVDs
的类?一个实例代表多少张DVD?你的问题是什么?这是一个令人困惑的问题。如果你能加入更多的上下文,那会有帮助。你为什么要假设?你为什么不测试你的代码呢?这是有道理的,但这与“最老”的意思相反。为什么你有一个名为DVDs
的类?一个实例代表多少张DVD?你的问题是什么?这正是我需要的。谢谢你的帮助!但是,当然,如果您愿意,您也可以使用dvdMap.values().stream().max(…)
而不是Collections.max(dvdMap.values(),…)
。这正是我需要的。谢谢你的帮助!但是,当然,如果愿意,您也可以使用dvdMap.values().stream().max(…)
而不是Collections.max(dvdMap.values(),…)
。