java如何在Java8中与LocalDate实现更少的需求和更高的质量
我想测试小于或等于或大于或等于的日期。 我在LocalDateAPI中找不到任何相关函数。有isBefore,isEqual和isAfter
我加一天,减一天来达到同样的效果。有没有更好的功能来实现同样的功能
boolean isGTOperator = filterOperator == OperatorEnum.GT;
boolean isLTOperator = filterOperator == OperatorEnum.LT;
boolean isLTEqualOperator = filterOperator == OperatorEnum.LTE;
boolean isGTEqualOperator = filterOperator == OperatorEnum.GTE;
if (isGTOperator ) {
return (myDate).isAfter(filterDate);
} else if (isGTEqualOperator ) {
return (myDate).isAfter(filterDate.plusDays(1));
}
else if (isLTOperator ) {
return ( myDate).isBefore(filterDate);
} else if (isLTEqualOperator ) {
return (myDate).isBefore(filterDate.minusDays(1));
}
# 1 楼答案
看起来你可以用Date。compareTo()。如果日期相等,返回值将为0;如果日期在参数日期之后,返回值将大于0;如果日期在参数日期之前,返回值将小于0This是一个有用的参考资料
# 2 楼答案
假设你有两个约会,即date1和date2
第一种方法日期。compareTo()
如果两个日期相等,则返回0
如果date1大于date2,则返回大于0的值
date1.compareTo(date2)>0
如果date1小于date2,则返回小于0的值
date1.compareTo(date2)<0
第二种方法等于、之前、之后
这些方法按照它们的名称工作,即
注意上述方法用于比较日期(),即java。util。日期