Java 如何在hashmap中获取包含最新LocalDate的对象

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()

我在DVDs对象中有一个名为
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(),…)