检测两个任务是否在Java中冲突

时间:2019-03-17 16:59:39

标签: java time feasibility

我有以下情况:两个任务 A B ,每个任务都有一个指定的时间窗,该窗口指定了任务可以开始的最早时间,称为{{1 }},以及该任务可以结束的最晚时间,称为earliestStart。另外,任务具有给定的latestEnd,等于或小于该特定任务的duration。例如,任务latestEnd - earliestStart必须在A内执行,持续时间为1小时,而任务08:00-10:00必须在B内执行,持续时间为1小时。我如何在Java中轻松检查这一点,这正确吗? (以证明它们没有重叠):

08:50-09:55

1 个答案:

答案 0 :(得分:1)

使用LocalTime表示一天中没有日期和时区的时间。

LocalTime aStart = LocalTime.of( 8 , 0 ) ;
Duration aDuration = Duration.ofHours( 1 ) ;
LocalTime aStop = aStart.plus( aDuration ) ;

使用isBeforeisAfterequals方法进行比较。