java在JodaTime中生成日期范围
我需要检查数组列表中是否存在日期(字符串)
我有两个日期,首先我需要在这两个日期之间生成日期范围,并将它们存储在一个数组中。这就是我正在做的
DateTimeFormatter dateFromatter= DateTimeFormat.forPattern("MM/dd/yyyy");
DateTime startDate= formatter.parseDateTime("01/02/2012");
DateTime endDate= formatter.parseDateTime("01/31/2012");
List<LocalDate> dates = new ArrayList<LocalDate>();
int days = Days.daysBetween(startDate, endDate).getDays();
for (int i=0; i < days; i++) {
这就是我遇到问题的地方
Type mismatch: cannot convert from DateTime to LocalDate
> LocalDate listOfDates =
> startDate.withFieldAdded(DurationFieldType.days(), i);
> dates.add(listOfDates);
}
# 1 楼答案
我来这里是为了这个,但两种解决方案都不为我所接受——我最终得到了以下结果:
请记住,LocalDates是不可变的,所以在调用plusDays(…)时实际上并没有更改它。还请注意,我使用<;=包括最后一天(在您的示例中,这将是1月31日)
# 2 楼答案
使用组织。乔达。时间间歇
# 3 楼答案
{a1}不起作用吗
不管怎样,您真的需要生成每个日期吗?除非我真的需要,否则我会做类似的事情: