java - 生成年份日期的便捷方法

标签 java

我想问创建特定年份的日期列表来保存今年的日期的最合适方法是什么。

我写了以下内容,效果很好。 但是,我不确定这是最方便的方法。

        Calendar cal = new GregorianCalendar(2012, Calendar.JANUARY, 1);
        Date startDate = cal.getTime();

        cal = new GregorianCalendar(2013, Calendar.JANUARY, 1);
        Date endDate = cal.getTime();


        List<Date> dates = new ArrayList<Date>();
        Calendar calendar = new GregorianCalendar();
        calendar.setTime(startDate);

        while (calendar.getTime().before(endDate)) {
            Date date= calendar.getTime();
            dates.add(date);
            calendar.add(Calendar.DATE, 1);
        }

最佳答案

你可以简化一下:

int startYear = 2012;
int endYear = 2013;

Calendar cal = new GregorianCalendar(startYear, Calendar.JANUARY, 1);
ArrayList<Date> dates = new ArrayList<Date>();
while(cal.get(Calendar.YEAR) < endYear){
    dates.add(cal.getTime());
    cal.add(Calendar.DATE, 1);
}

关于java - 生成年份日期的便捷方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11714117/

相关文章:

java - 输入年份和第一天,获取一个月的第一天

java程序执行adb shell screenrecord

java - 如何使用 JerseyFramework 将参数放入 RESTful POST 中

android 中的 java.lang.ClassCastException

JavaFX 异常关闭警报返回错误结果

java - 杀死CPU的Jpanel实现

java - 在Hql-Initialization中创建sessionFactory

java - 来自服务器的响应代码

java - 如何在MYSQL数据库中存储文件列表

java - 为什么 onFling() 在 ListView 中不起作用?