12

JavaDateオブジェクトが月曜日かどうかを確認する方法はありますか? オブジェクトを使用できるようですがCalendar、日付はありますか? 月曜日のインデックス作成が変更される場合は、米国東部の日付と時刻も使用しています

4

5 に答える 5

30

このようなものが動作します:

Calendar cal = Calendar.getInstance();
cal.setTime(theDate);
boolean monday = cal.get(Calendar.DAY_OF_WEEK) == Calendar.MONDAY;
于 2012-08-22T19:54:38.487 に答える
10

オブジェクトを使用できCalendarます。

setTime(date)を使用してカレンダー オブジェクトに日付を設定します

例:

calObj.get(Calendar.DAY_OF_WEEK) == Calendar.MONDAY

編集:Jon Skeetが示唆したように、 TimeZone を Calendar オブジェクトに設定して、タイムゾーンに完全に対応するようにする必要があります。

于 2012-08-22T19:51:28.197 に答える
5

この質問は、タイム ゾーンと暦体系という 2 つの追加情報がなければ意味がありません。

オブジェクトは、あるDate瞬間を表すだけです。私のタイムゾーンのグレゴリオ暦ではたまたま水曜日ですが、私の東に住む一部の人々にとっては、すでに木曜日です. 他の暦体系では、「月曜日」などの概念さえないかもしれません。

暦体系の部分はおそらく問題にはなりませんが、関心のあるタイム ゾーンを特定する必要があります。

その後、オブジェクトを作成しCalendar、タイム ゾーンと表現される瞬間の両方を設定できます。または、より優れた日付/時刻 API である Joda Time を使用することできます同じ質問について考える必要がありますが、コードはより明確になります。

于 2012-08-22T19:53:27.320 に答える
3

これらのチェックには Calendar オブジェクトを使用する必要があります。Date のタイムゾーンのサポートは弱いです。あるタイムゾーンでは、この日付は月曜日であり、別のタイムゾーンではまだ日曜日です。

于 2012-08-22T19:54:34.613 に答える