Java8获取当年所有日期

借用Java8中新增的LocalDate简单实现一年所有日期的获取,形如:

2024-01-01
2024-01-02
2024-01-03
2024-01-04
2024-01-05
2024-01-06
2024-01-07
2024-01-08
2024-01-09
2024-01-10
2024-01-11
2024-01-12
2024-01-13
2024-01-14
2024-01-15
2024-01-16
2024-01-17
2024-01-18
2024-01-19
2024-01-20
2024-01-21
2024-01-22
2024-01-23
2024-01-24
2024-01-25
2024-01-26
2024-01-27
2024-01-28
2024-01-29
2024-01-30
2024-01-31
...

具体实现

import java.time.LocalDate;
import java.time.temporal.ChronoUnit;

public class GetThisYearDates
{
    public static void main(String[] args)
    {
        // 获取当年第一天
        LocalDate startDate = LocalDate.now().withDayOfYear(1);
        // 获取当年最后一天
        LocalDate endDate = LocalDate.now().withDayOfYear(1).plusYears(1).minusDays(1);
        long days = ChronoUnit.DAYS.between(startDate, endDate); //计算天数
        for (int i = 0; i <= days; i++)
        {
            System.out.println(startDate.plusDays(i)); //打印每天的日期
        }
    }
}