Diese Methode soll prüfen, wie viele Sonn- und Samstag in einem Zeitintervall enthalten sind. Leider gibt die Methode im Intervall vom 01.01.2012 - 31.01.2012 genau zwei mal Samstag aus und das wars. Mag da mal jemand rüberschauen und mir sagen, wo der Fehler liegt?
Hier die Methode:
Grüße
Moch
Hier die Methode:
Java:
/**
* Korrigiert die Anzahl der Urlaubstage um Wochenendtage
* @param anfang Timestamp: Ist das Anfangsdatum des Antrages
* @param ende Timestamp: Ist das Enddatum des Antrages
* @param origLaenge Integer: Ist die bisher berechnete Anzahl Urlaubstage
* @return Integer: Korrigierte Menge an Urlaubstagen;
*/
private int correctWeekend(Timestamp anfang, Timestamp ende, int origLaenge) {
Calendar beg = Calendar.getInstance();
Calendar run = Calendar.getInstance();
Calendar end = Calendar.getInstance();
beg.set(anfang.getYear(), anfang.getMonth(), anfang.getDay());
run.set(anfang.getYear(), anfang.getMonth(), anfang.getDay());
end.set(ende.getYear(), ende.getMonth(), ende.getDay());
while (run.before(end)){
if(run.DAY_OF_WEEK == Calendar.SATURDAY){
origLaenge--;
System.out.println("DEBUG: SAMSTAG");
}
if(run.DAY_OF_WEEK == Calendar.SUNDAY){
origLaenge--;
System.out.println("DEBUG: SONNTAG");
}
run.add(Calendar.DAY_OF_MONTH, 1);
}
return origLaenge;
}
Grüße
Moch
Zuletzt bearbeitet: