Wie überprüfen Sie, ob heute Sonntag ist mit Java-Kalender
Schrieb ich ein paar Zeilen code, die funktioniert nicht richtig. Warum? Könnte mir bitte JMD erklären?
Calendar date = Calendar.getInstance();
date.set(2010, 03, 7);
if(date.get(Calendar.DAY_OF_WEEK) == Calendar.SUNDAY)
System.out.println("OK");
Ich bin überrascht, niemand hat vorgeschlagen, Joda Mal, aber... Es ist eine viel bessere API für das tun von Datum/Zeit-Verarbeitung.
InformationsquelleAutor Kamil | 2010-03-07
Du musst angemeldet sein, um einen Kommentar abzugeben.
Um keine Fehler zu machen, Sie können Kalender verwenden, die statische Werte für den Monat, z.B. :
InformationsquelleAutor Desintegr
Monate zählen von null:
Bekommen auch nicht in die Gewohnheit des Schreibens von zahlen mit führenden Nullen. Das sagt Java (und viele andere Sprachen), dass man die Zahl interpretiert als oktal (Basis 8) Konstante, nicht dezimal.
InformationsquelleAutor Pointy
Weil April 7th, 2010 nicht Sonntag ist. Monate mit null beginnen: 0 = Januar, 1 = Februar 2 = März, ...
(Auch seitliche Anmerkung, die Sie verwendet haben, oktal, bei der Angabe des Monats [
03
statt3
]. Nicht schlimm, bis zum September, woraufhin08
ist eine ungültige Oktalzahl.)InformationsquelleAutor T.J. Crowder
Ist dies für die Euler-19?
Wenn dem so ist, ist hier ein Tipp,, loop von 1901 bis 2000 von Monate von 0 bis 11, vom Tage 1-31, dann Fragen Sie sich:
InformationsquelleAutor medopal
Wahrscheinlich, weil der Monat 0-basiert, so dass Sie festlegen, April, der 7. ist ein Mittwoch.
InformationsquelleAutor Thilo
Monat Wert ist 0-basiert.
Java-docs für die set-Methode von Calendar-Klasse
.Auch, wenn Sie möchten, um zu überprüfen, ob heute(am Tag das Programm ausgeführt wird 🙂 ) ist Sonntag, Sie müssen nicht nichts einstellen, weil die
getInstance
Methode gibt ein Kalender-Objekt basierend auf der aktuellen Zeit in der Standard-Zeitzone mit der Standard-locale:InformationsquelleAutor codaddict
Für mich dieser code ordnungsgemäß funktioniert, setzen Sie bitte das genaue Datum ein, indem Sie es eine Millisekunde und versuchen wie diese:-
Dank,
Prabhat Kumar Kashyap
InformationsquelleAutor Prabhat Kumar Kashyap
cal.DAY_OF_WEEK == cal.SAMSTAG
|| cal.DAY_OF_WEEK == cal.SAMSTAG
sollte gut genug sein.
InformationsquelleAutor lwpro2