Java代码,用于计算日期范围内的中夜数(00:00:00)
发布时间:2020-12-15 04:20:20 所属栏目:Java 来源:网络整理
导读:我正在尝试编写一个 java块来查找特定日期范围内的中午数. 例如: 开始日期:05/01/2014 00:00:00 截止日期:05/03/2014 00:00:00 这个范围有3个中午. 要么 开始日期:05/01/2014 00:00:00 截止日期:05/02/2014 23:59:59 这只有一个. 它基本上要告诉我时间
我正在尝试编写一个
java块来查找特定日期范围内的中午数.
例如: 开始日期:05/01/2014 00:00:00 这个范围有3个中午. 要么 开始日期:05/01/2014 00:00:00 这只有一个. 它基本上要告诉我时间“00:00:00”在日期范围内发生了多少次. 解决方法
使用Joda-Time的答案是不正确的.因为@khriskooper已经注意到了之间的中午数
2014-05-01 00:00:00 and 2014-05-02 23:59:59 不是一个,而是两个中午! 所以这里使用Joda-Time进行校正(未经测试),但它也可以是支持日程计算的任何其他库(对于旧的Java-pre8不适用).我省略了时区细节,因为我不认为它与问题真正相关.如果OP想要他可以用DateTime替换LocalDateTime并应用时区. LocalDateTime ldt1 = new LocalDateTime(2014,5,1,0); LocalDateTime ldt2 = new LocalDateTime(2014,2,23,59,59); int days = Days.daysBetween(ldt1.toLocalDate(),ldt2.toLocalDate()).getDays(); if (ldt1.toLocalTime().equals(new LocalTime(0,0))) { days++; } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
推荐文章
站长推荐
热点阅读