我有以下情况:两个任务,A和B,每个任务都有一个给定的时间窗口,指定任务可以开始的最早时间,调用earliestStart和任务可以结束的最晚时间,调用latestEnd。此外,任务有一个给定的duration,即等于或小于latestEnd - earliestStart该特定任务的 。例如,任务A必须在 内执行08:00-10:00,持续时间为 1 小时,而任务B必须在 内执行08:50-09:55,持续时间为 1 小时。我怎样才能在java中轻松检查,这是正确的吗?(证明它们不重叠):
taskA.earliestStart + taskA.duration < taskB.latestEnd - taskB.duration
|| taskB.earliestStart + taskB.duration < taskA.latestEnd - taskA.duration