kotlinで曜日を詳しく取得


kotlinで"その月の何回目の水曜日"などをアプリ側から指定して取得する方法を模索しております




[`TemporalAdjuster`](https://docs.oracle.com/javase/jp/11/docs/api/java.base/java/time/temporal/TemporalAdjuster.html)
([チュートリアル](https://docs.oracle.com/javase/tutorial/datetime/iso/adjusters.html))
を実装することになるかと思います。

質問文の例であれば、組み込みで
[`TemporalAdjusters.dayOfWeekInMonth​()`](https://docs.oracle.com/javase/jp/11/docs/api/java.base/java/time/temporal/TemporalAdjusters.html#dayOfWeekInMonth\(int,java.time.DayOfWeek\))というメソッドが提供されているのでこれを利用できると思います。

[code]

    import java.time.DayOfWeek
    import java.time.LocalDate
    import java.time.temporal.TemporalAdjusters
    
    fun main() {
        val base = LocalDate.of(2021, 12, 3)
        val date = base.with(TemporalAdjusters.dayOfWeekInMonth(2, DayOfWeek.WEDNESDAY))
        println(date) // 2021-12-08
    }
    
[/code]

