Du verwendest einen veralteten Browser. Es ist möglich, dass diese oder andere Websites nicht korrekt angezeigt werden. Du solltest ein Upgrade durchführen oder ein alternativer Browser verwenden.
WEEK_OF_YEAR scheint dafür interessant + DAY_OF_WEEK natürlich,
und immer aufpassen:
manchmal wird von 1-31 gezählt (Tage im Monat) oder 0-11 (Monat im Jahr)
was ein bestimmter Wochentag (0-6 oder 1-7) bedeutet hängt evtl. von der Zeitzone/ Locale (Ländereisntellung) ab,
mal ein Montag, mal ein Samstag oder Sonntag,
testen, testen, testen
Habe das ganze jetzt erstmal auf das wichtigste beschränkt:
Code:
public static void main(String[] args)
{
//Ausgabe des Datums
GregorianCalendar cal = new GregorianCalendar();
GregorianCalendar.getInstance().set(GregorianCalendar.YEAR, 2008);
//Ausgabe des aktuellen Datums
/*cal.set(GregorianCalendar.DATE, 5);
cal.set(GregorianCalendar.MONTH, 1);
cal.set(GregorianCalendar.YEAR, 2008);*/
cal.get(GregorianCalendar.DATE);
cal.get(GregorianCalendar.MONTH);
cal.get(GregorianCalendar.YEAR);
GregorianCalendar(cal);
}
public static void GregorianCalendar(GregorianCalendar cal)
{
int value = cal.get(GregorianCalendar.ERA);
//Datum
System.out.println("Datum: " + cal.get(GregorianCalendar.DATE) + "." + (cal.get(GregorianCalendar.MONTH)+1)
+ "." + cal.get(GregorianCalendar.YEAR));
//Tag
System.out.println("Tag: " + cal.get(GregorianCalendar.DAY_OF_YEAR) + ". im Jahr");
System.out.println(" " + cal.get(GregorianCalendar.DAY_OF_MONTH) + ". im Monat\n");
//Woche
System.out.println("Woche: " + cal.get(GregorianCalendar.WEEK_OF_YEAR) + ". im Jahr");
System.out.println(" " + cal.get(GregorianCalendar.WEEK_OF_MONTH) + ". im Monat\n");
}
}
Mein Problem ist immer noch, das ich nur das Datum von diesem Jahr in der Ausgabe bekomme, außerdem sind meine Berechnungen falsch (glaube ich zumindest), ich will ja immer noch das Datum von jedem Montag und jedem Freitag des nächsten Jahres
sind wieder vollkommen sinnlos, da sie ins leere laufen
5. Zu dieser Zeile
Code:
GregorianCalendar(cal);
ist zu sagen, dass
- Methodennamen klein geschrieben werden
- Es extrem verwirrend und Fehleranfällig ist eine Methode wie eine verwendete Klasse zu nennen
- Du dir mal gedanken über die korrekte Verwendung des Schlüsselwort "static" machen solltest
wird lediglich das aktuelle Datum berücksichtigt, da du das Setzen des anderen Datums auskommentiert hast. Außerdem solltest du anstelle von DATE lieber DAY_OF_MONTH verwenden
public class Datum2 {
public static void main(String[] args)
{
//Ausgabe des Datums
GregorianCalendar cal = new GregorianCalendar();
//Ausgabe des aktuellen Datums
cal.set(GregorianCalendar.DATE, 5);
cal.set(GregorianCalendar.MONTH, 1);
cal.set(GregorianCalendar.YEAR, 2008);
}
public void GregorianCalendar(Calendar cal)
{
//Datum
System.out.println("Datum: " + cal.get(Calendar.DAY_OF_MONTH) + "." + (cal.get(Calendar.MONTH)+1)
+ "." + cal.get(Calendar.YEAR));
//Tag
System.out.println("Tag: " + cal.get(Calendar.DAY_OF_YEAR) + ". im Jahr");
System.out.println(" " + cal.get(Calendar.DAY_OF_MONTH) + ". im Monat\n");
//Woche
System.out.println("Woche: " + cal.get(Calendar.WEEK_OF_YEAR) + ". im Jahr");
System.out.println(" " + cal.get(Calendar.WEEK_OF_MONTH) + ". im Monat\n");
}
}
Also, der Compiler gibt mir wie gesagt nichts.
Ich will aber das er mir von jedem Montag und jeden Freitag 2008 das Datum ausgibt (wirklich nur das Datum, keine Uhrzeit usw. das nur spielerei!) außerdem noch die Kalenderwoche