我第一次在Spring 3.0项目中使用Joda time api。现在,我有一个开始和结束日期,我想获取这两个日期之间所有星期一的日期。我怎样才能做到这一点 ?

我不知道从哪里开始,有人可以建议。我看了Joda Time: How to get dates of weekdays on some date interval?上的theis帖子,它提供了一些指导,但是由于对joda的经验不足,它仍然有些模糊。

最佳答案

LocalDate startDate = new LocalDate(2011, 11, 8);
LocalDate endDate = new LocalDate(2012, 5, 1);

LocalDate thisMonday = startDate.withDayOfWeek(DateTimeConstants.MONDAY);

if (startDate.isAfter(thisMonday)) {
    startDate = thisMonday.plusWeeks(1); // start on next monday
} else {
    startDate = thisMonday; // start on this monday
}

while (startDate.isBefore(endDate)) {
    System.out.println(startDate);
    startDate = startDate.plusWeeks(1);
}

08-27 01:21
查看更多