How to include start date in Joda Time daysBetween?
在测试joda time以获取已选择的天数时,它不包括开始日期。
1 2 3 4
| Date from = day1. getTime();
Date to = day2. getTime();
int daysBetween = Days. daysBetween(new DateTime (from ), new DateTime (to )). getDays(); |
因此,如果我选择12月14日至16日,结果只显示"2",而不是3。
仅仅使用"+1"结果是否安全,或者在Joda Time中是否有正确的方法进行此操作?
- stackoverflow.com/questions/3802893/…
- 仅供参考,Joda Time项目现在处于维护模式。团队建议迁移到java.time类。
实际上,daysBetween(-,-)方法只是从结束日期中减去开始日期。如果您想得到包括开始日期在内的总天数,那么必须从开始日期减去1。
- 或者更简单地说,在结果中添加一个。
- 是的,你也可以在结果中加1。
- 谢谢大家。它奏效了!:)由于某种原因,toLocalate或withTimeAtStartOfDay不会产生我预期的结果。