如何使用joda时间检查时间是否在间隔之前

问题描述 投票:0回答:1

我想看看给定的日期时间是否在特定时间之前发生。

如果确实如此,则返回true else false

设D是从S让S到我们时间范围的极限之前的时间。设F是S之后的时间。

D --------------------- D-S ------- F.

所以D将返回true,F将返回false作为此问题的输入

Interval time = new Interval(schenduledDepature, schenduledDepature)

if (time.getEnd().isBefore(aDate)) return true
else return false 

由于某种原因,这不起作用,即使在时间框架之前,我总是会弄错。有人可以帮我这个吗?

java jodatime
1个回答
2
投票

根据doc

是指定时刻之前的时间间隔。间隔包括开始即时和独家结束。

因为Interval的开头和结尾是相同的,所以你总是假的。创建Interval与它们之间的差异,确保aDate介于两者之间,然后再试一次。

P.S - 而不是使用if-else,只是return time.getEnd().isBefore(aDate)

© www.soinside.com 2019 - 2024. All rights reserved.