java 时如开始月份和结束月份 生成 中间所有月份的list
时间: 2023-11-09 20:03:01 浏览: 53
java获取指定开始时间与结束时间之间的所有日期
可以使用 Java 8 的新特性,如下所示:
```java
import java.time.YearMonth;
import java.util.ArrayList;
import java.util.List;
public class Main {
public static void main(String[] args) {
String startMonth = "2022-01"; // 开始月份
String endMonth = "2022-12"; // 结束月份
YearMonth start = YearMonth.parse(startMonth);
YearMonth end = YearMonth.parse(endMonth);
List<String> months = new ArrayList<>();
while (!start.isAfter(end)) {
months.add(start.toString());
start = start.plusMonths(1);
}
System.out.println(months);
}
}
```
输出结果为:
```
[2022-01, 2022-02, 2022-03, 2022-04, 2022-05, 2022-06, 2022-07, 2022-08, 2022-09, 2022-10, 2022-11, 2022-12]
```
首先,使用 `YearMonth.parse()` 方法将字符串转换为 `YearMonth` 类型。然后,使用 `while` 循环将所有中间月份添加到列表中。在每次循环中,使用 `plusMonths()` 方法将月份加一。最后,输出列表即可。
阅读全文