Prüfe, ob date () Montag ist? Java

8

Gibt es eine Möglichkeit zu überprüfen, ob ein Java Date -Objekt Montag ist? Ich sehe Sie können mit einem Calendar Objekt, aber Datum? Ich benutze auch US-östliches Datum und Uhrzeit, wenn sich die Indexierung von Montag ändert.

    
Jake Long 22.08.2012, 19:49
quelle

4 Antworten

21

So etwas funktioniert:

%Vor%     
Dan D. 22.08.2012, 19:54
quelle
9

Sie können Calendar object verwenden.

Stellen Sie Ihr Datum mit setTime (Datum)

Beispiel:

%Vor%

EDIT: Wie Jon Skeet vorgeschlagen hat, müssen Sie TimeZone auf Calendar-Objekt einstellen, um sicherzustellen, dass es perfekt für die Zeitzone funktioniert.

    
kosa 22.08.2012 19:51
quelle
5

Die Frage ergibt keinen Sinn ohne zwei zusätzliche Informationen: eine Zeitzone und ein Kalendersystem.

Ein Date -Objekt repräsentiert nur einen Zeitpunkt. Es ist Mittwoch im Gregorianischen Kalender in meiner Zeitzone - aber für einige Leute östlich von mir ist es schon Donnerstag. In anderen Kalendersystemen gibt es möglicherweise nicht einmal ein solches Konzept von "Montag" usw.

Der Kalendersystemteil ist wahrscheinlich kein Problem, aber Sie müssen herausfinden, für welche Zeitzone Sie sich interessieren.

Sie können dann ein Calendar -Objekt erstellen und sowohl die Zeitzone als auch den dargestellten Zeitpunkt festlegen - oder besser, Sie könnten Joda Time verwenden , das ist eine viel bessere Datum / Zeit-API. Sie müssen immer noch über die gleichen Fragen nachdenken, aber Ihr Code wird klarer.

    
Jon Skeet 22.08.2012 19:53
quelle
3

Sie sollten das Calendar-Objekt für diese Überprüfungen verwenden. Datum hat schwache Zeitzonenunterstützung. In einer Zeitzone kann dieses Datum Montag sein, und in einer anderen Zeitzone ist es immer noch Sonntag.

    
March 22.08.2012 19:54
quelle

Tags und Links