Der TemporalAdjuster, der von der next (DayOfWeek dayOfWeek)
-Methode der [TemporalAdjusters] zurückgegeben wird (https://docs.oracle.com/javase/jp/8/docs/api/java/time/temporal/TemporalAdjusters.html) Sie können das Datum von "LocalDate" auf das Datum des nächsten x Tages ändern, indem Sie eine Instanz von: //docs.oracle.com/javase/jp/8/docs/api/java/time/temporal/TemporalAdjuster.html verwenden. ..
Beispielcode
LocalDate d = LocalDate.of(2019, 3, 25).with(TemporalAdjusters.next(DayOfWeek.MONDAY));
LocalDate d2 = LocalDate.of(2019, 3, 29).with(TemporalAdjusters.next(DayOfWeek.valueOf("MONDAY")));
LocalDate d3 = LocalDate.of(2019, 3, 31).with(TemporalAdjusters.next(DayOfWeek.of(1)));
System.out.println(d.toString());
System.out.println(d2.toString());
System.out.println(d3.toString());
Ausgabe
2019-04-01
2019-04-01
2019-04-01
Wenn das LocalDate-Datum bereits dieser Tag ist, wird es auf das Datum der nächsten Woche gesetzt.
Die Verwendung von "nextOrSame (DayOfWeek dayOfWeek)" führt zu nichts, wenn LocalDate bereits an diesem Tag ist.
Stichprobe
LocalDate d = LocalDate.of(2019, 3, 25).with(TemporalAdjusters.nextOrSame(DayOfWeek.MONDAY));
LocalDate d2 = LocalDate.of(2019, 3, 29).with(TemporalAdjusters.nextOrSame(DayOfWeek.valueOf("MONDAY")));
LocalDate d3 = LocalDate.of(2019, 3, 31).with(TemporalAdjusters.nextOrSame(DayOfWeek.of(1)));
Ausgabe
2019-03-25
2019-04-01
2019-04-01
Recommended Posts