Java 8 Stream API 获取 List<Map<String, String>> 中最大时间字段值
使用 Java 8 的 Stream API 可以轻松获取 List<Map<String, String>> 中 'datetime' 字段的最大值:
Optional<String> maxDatetime = memberList.stream()
.map(m -> m.get('datetime'))
.filter(Objects::nonNull)
.max(String::compareTo);
memberList.stream():将memberList转换为一个流。map(m -> m.get('datetime')):将每个 Map 对象转换为其 'datetime' 值。filter(Objects::nonNull):过滤掉 'datetime' 为 null 的 Map 对象。max(String::compareTo):找到最大的 'datetime' 值。
最终结果是一个 Optional 类型的对象,因为 memberList 可能为空,或者所有 Map 对象的 'datetime' 值都为 null。
原文地址: https://www.cveoy.top/t/topic/nAm4 著作权归作者所有。请勿转载和采集!