Java8 java.time.YearMonth は、
以下を見れば済むことなのだけれども、書く機会が少なかったのでメモ
https://docs.oracle.com/javase/jp/8/docs/api/java/time/YearMonth.html
YearMonth ym = YearMonth.of(2020, 12).plusMonths(3); System.out.println(ym2.format(DateTimeFormatter.ofPattern("yyyyMM")));
標準出力結果
202103
4か月分リスト
List<YearMonth> list = Stream.iterate(YearMonth.of(2020, 12), t->t.plusMonths(1)) .limit(4) .collect(Collectors.toList()); System.out.println(list);
標準出力結果
[2020-12, 2021-01, 2021-02, 2021-03]
日付から。。。
String str = "20201203"; List<YearMonth> list = Stream.iterate( YearMonth.parse(str, DateTimeFormatter.ofPattern("yyyyMMdd")) , t->t.plusMonths(1) ).limit(4) .collect(Collectors.toList());
同じ結果になる