Java Joda LocalDate比较是否相等或前后

Java Joda LocalDate比较是否相等或前后,java,jodatime,Java,Jodatime,我想比较joda LocalDate对象,并检查/比较两个日期之间的日期 例如: LocalDate date = new LocalDate(2019, 2, 2); LocalDate end = new LocalDate(); LocalDate start = end.minusYears(1); 现在,我想检查date是否介于start和end之间。 另外,我希望它像gte和lte一样工作。。。在前面或相等,在后面或相等 我只能找到isBefore,isAfter,isEqual。

我想比较joda LocalDate对象,并检查/比较两个日期之间的日期

例如:

LocalDate date = new LocalDate(2019, 2, 2);
LocalDate end = new LocalDate();
LocalDate start = end.minusYears(1);
现在,我想检查
date
是否介于
start
end
之间。 另外,我希望它像
gte
lte
一样工作。。。在前面或相等,在后面或相等

我只能找到
isBefore
isAfter
isEqual
。。。但是我找不到
是beforequal
是beforequal

有任何实用程序可以与joda LocalDate一起使用吗?有什么有效的方法来解决这个问题吗

我想先检查
isBefore
然后检查
isEqual
,再检查
isAfter
然后检查
isEqual
。。。但我认为它相当长或效率低下

private boolean isBeforeOrEqual(LocalDate date, LocalDate compareToDate) {
    if (date == null || compareToDate == null) {
        return false;
    }
    return compareToDate.isBefore(date) || compareToDate.isEqual(date);
}

private boolean isAfterOrEqual(LocalDate date, LocalDate compareToDate) {
    if (date == null || compareToDate == null) {
        return false;
    }
    return compareToDate.isAfter(date) || compareToDate.isEqual(date);
}
在Alex在下面的评论之后,我重写了方法
isbeforequal
isAfterOrEqual
,而且要短得多。非常感谢,亚历克斯

private boolean isBeforeOrEqual(LocalDate date, LocalDate compareToDate) {
    if (date == null || compareToDate == null) {
        return false;
    }
    return !compareToDate.isAfter(date);
}

private boolean isAfterOrEqual(LocalDate date, LocalDate compareToDate) {
    if (date == null || compareToDate == null) {
        return false;
    }
    return !compareToDate.isBefore(date);
}

谢谢

“在Alex说的话之前或之后”===“不是之后”,或者你可以
date.compareTo(compareToDate)>=0
等等。就像任何类似的。谢谢大家,是的,我试过Alex说的,而且短了很多。因为
isbeforequal
我刚刚用了
!日期。isAfter(比较日期)