java 判断时间是否重叠或者包含
时间: 2023-09-06 22:10:41 浏览: 105
Java 判断一个时间是否在另一个时间段内
判断两个时间段是否重叠或者包含的 Java 代码可以参考以下方法:
```java
public static boolean isTimeOverlapOrContain(LocalTime start1, LocalTime end1, LocalTime start2, LocalTime end2) {
if (start1.compareTo(end2) >= 0 || start2.compareTo(end1) >= 0) {
// 两个时间段没有重叠部分
return false;
} else if (start1.compareTo(start2) <= 0 && end1.compareTo(end2) >= 0) {
// 时间段 1 包含时间段 2
return true;
} else if (start2.compareTo(start1) <= 0 && end2.compareTo(end1) >= 0) {
// 时间段 2 包含时间段 1
return true;
} else {
// 两个时间段有重叠部分,但不包含
return false;
}
}
```
与前面的方法类似,首先判断两个时间段的结束时间和开始时间的关系。如果两个时间段没有重叠部分,则返回 `false`。如果一个时间段完全包含另一个时间段,则返回 `true`。如果两个时间段有重叠部分,但不包含,则返回 `false`。
阅读全文