我的代码存在问题。我希望你能帮助我。
关于Joda Time的时间间隔。
我的问题是:
当我想知道日期是否在两个日期之间且日期等于结束日期时,这个日期是无限的。当日期等于结束日期时,无法找到匹配项。
例如:
while (!comprobar) {
Interval interval = new Interval("2025-02-24",
"2025-02-28");
if (interval.contains("2025-02-28") || interval.equals("2025-02-28")) {
comprobar = true;
}
if (!comprobar) {
i++;
}
}
if (comprobar) {
int res = mapHoras.get(i) - hor;
mapHoras.put(i, res);
// mapFestivos.remove(dt);
}
由于
答案 0 :(得分:0)
查看org.joda.time.Interval的javadoc:
时间间隔表示两个时刻之间的一段时间。 间隔包括开始即时和不包括结束。
根据定义排除结束日期,因此您必须检查结束日期是否相等。
if (interval.contains(date) || interval.getEnd().equals(date)) {...}