日付の1に意味はない
day of monthは何でもいいのだったらatDay
の引数に1というリテラルを直接書かずに、
d.atEndOfMonth().with(dayOfWeekInMonth(3, SUNDAY))
でもいいという話も。
しかし、atDay
における引数1は現行のどんな暦でも多分正当な引数であるはずだし、
0並みに1も直接書くことに抵抗感はないし。
また、これはこれで、最後の日付を得ることの意味を見出そうとすることになりかねない。
意味ありげなリテラルでも意図していない意味のあるメソッド名でも同じこと。
リテラルを書くことが悪いのではなく意味を持たないものを書くのが悪いのだ。
というわけで前記事のソースでいいような気がしてきた。
というよりもそもそも最初のfor文使用のソースで十分なわけだが。
d.plusMonths(1)
の方は意味のある1である。