java 获取一年所有日期
时间: 2023-07-18 19:41:15 浏览: 106
java获取年月日
5星 · 资源好评率100%
你可以使用Java 8中的新API来获取一年中的所有日期。具体的做法是创建一个 `LocalDate` 对象,然后使用 `plusDays()` 方法逐一增加天数,直到达到下一年的第一天为止。
以下是一个示例代码:
```java
import java.time.LocalDate;
import java.time.temporal.ChronoUnit;
import java.util.ArrayList;
import java.util.List;
public class Main {
public static void main(String[] args) {
int year = 2022; // 设置要获取的年份
List<LocalDate> dates = getAllDatesOfYear(year);
System.out.println(dates);
}
public static List<LocalDate> getAllDatesOfYear(int year) {
LocalDate date = LocalDate.of(year, 1, 1); // 创建日期对象
LocalDate end = LocalDate.of(year + 1, 1, 1); // 下一年的第一天
List<LocalDate> dates = new ArrayList<>();
while (date.isBefore(end)) {
dates.add(date);
date = date.plus(1, ChronoUnit.DAYS); // 增加一天
}
return dates;
}
}
```
输出结果为:
```
[2022-01-01, 2022-01-02, 2022-01-03, ..., 2022-12-30, 2022-12-31]
```
这个示例代码中,我们首先设置要获取的年份为 2022,然后调用 `getAllDatesOfYear()` 方法获取该年的所有日期。该方法内部使用一个 `while` 循环逐一增加天数,并将每个日期存储到一个 `List<LocalDate>` 对象中,最后返回该列表。
阅读全文