使用 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);
  1. memberList.stream():将 memberList 转换为一个流。
  2. map(m -> m.get('datetime')):将每个 Map 对象转换为其 'datetime' 值。
  3. filter(Objects::nonNull):过滤掉 'datetime' 为 null 的 Map 对象。
  4. max(String::compareTo):找到最大的 'datetime' 值。

最终结果是一个 Optional 类型的对象,因为 memberList 可能为空,或者所有 Map 对象的 'datetime' 值都为 null。

Java 8 Stream API 获取 List<Map<String, String>> 中最大时间字段值

原文地址: https://www.cveoy.top/t/topic/nAm4 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录