ローカル日付の間カレンダーウィークの違いを取得

JCamacho:

私は解決策は何か他のもののほかにあるポストを見つけるのトラブルを抱えています

7日差と除算をゲット

私は数週間は月曜日に開始する二つの日付の間のカレンダーの週に差を得るために探しています。

例えば、2019年11月4日および2019年11月10日の間の週の数は0でなければなりません。

しかし、2019年11月10日および2019年11月11日の間の週の数は1でなければなりません。

解決策は、異なる年の日付を考慮する必要があります。その使用の任意のソリューションLocalDate

assylias:

ChronoUnitsが有する方法開始日と終了日/時刻との間の完全な単位の数を返します。日曜日に週に月曜日をカウントするために、あなたは前の月曜日に「ラウンドダウン」のあなたの日付でした。あなたのケースでは、次のようになります。between

LocalDate start = LocalDate.of(2019, 11, 10);
LocalDate end = LocalDate.of(2019, 11, 11);

LocalDate mondayStart = start.with(TemporalAdjusters.previousOrSame(DayOfWeek.MONDAY));
LocalDate mondayEnd = end.with(TemporalAdjusters.previousOrSame(DayOfWeek.MONDAY));

System.out.println(ChronoUnit.WEEKS.between(mondayStart, mondayEnd));

おすすめ

転載: http://43.154.161.224:23101/article/api/json?id=329853&siteId=1