如何遍历Java中的日期范围?

2022-01-24 00:00:00 iteration date java

在我的脚本中,我需要在给定开始日期和结束日期的情况下,在日期范围内执行一组操作.
请指导我使用 Java 实现这一目标.

In my script I need to perform a set of actions through range of dates, given a start and end date.
Please provide me guidance to achieve this using Java.

for ( currentDate = starDate; currentDate < endDate; currentDate++) {

}

我知道上面的代码根本不可能,但我这样做是为了向您展示我想要实现的目标.

I know the above code is simply impossible, but I do it in order to show you what I'd like to achieve.

推荐答案

好吧,你可以使用 Java 8 的 time-API,专门针对这个问题 java.time.LocalDate (或等效的 Joda Time Java 7 及更早版本的类)

Well, you could do something like this using Java 8's time-API, for this problem specifically java.time.LocalDate (or the equivalent Joda Time classes for Java 7 and older)

for (LocalDate date = startDate; date.isBefore(endDate); date = date.plusDays(1))
{
    ...
}

我会彻底推荐使用 java.time(或 Joda Time)而不是内置 Date/Calendar 类.

I would thoroughly recommend using java.time (or Joda Time) over the built-in Date/Calendar classes.

相关文章