你可以使用 Java 8 的 Stream API 来找到 List 中的最大日期。首先,你需要将 List 转换为 Stream,然后使用 max 方法来找到最大的日期,最后使用 orElse 方法来处理空列表的情况。

下面是一个示例代码:

import java.time.LocalDate;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.Optional;

public class Main {
    public static void main(String[] args) {
        List<Date> dates = new ArrayList<>();
        
        // 添加一些日期到列表中
        dates.add(new Date(System.currentTimeMillis()));
        dates.add(new Date(System.currentTimeMillis() - 1000));
        dates.add(new Date(System.currentTimeMillis() + 1000));
        
        Optional<Date> maxDate = dates.stream()
                .max(Date::compareTo);
        
        if (maxDate.isPresent()) {
            Date max = maxDate.get();
            System.out.println('最大日期:' + max);
        } else {
            System.out.println('列表为空');
        }
    }
}

这个示例代码创建了一个包含三个日期的 List。然后,使用 Stream 的 max 方法和 Date 的 compareTo 方法来找到最大的日期。最后,使用 Optional 的 isPresent 和 get 方法来获取最大日期并打印出来。

请注意,上述代码使用的是 java.util.Date 类,如果你使用的是 Java 8 或更高版本,推荐使用新的日期和时间 API java.time.LocalDate。你可以将日期转换为 java.util.Date 对象,然后再进行比较。

Java 中找到 List 中的最大日期 - 使用 Stream API

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

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