判断两个时间段范围是否有交集(时间重叠)问题经常遇到,比如预约会议室开会,活动的开始结束等,本文做此分析。

前提:本文时间传参已做限制,结束时间必须大于开始时间

1、正向思维

判断两个时间段交集、时间重叠问题_时间重叠

代码如下

(oneStartTime <= otherStartTime && otherStartTime <= oneEndTime) 
|| (oneStartTime <= otherEndTime && otherEndTime <= oneEndTime)
|| (oneStartTime <= otherStartTime && oneEndTime <= otherEndTime)
|| (otherStartTime <= oneStartTime && oneEndTime <= otherEndTime)

oneStartTime <= otherEndTime && oneEndTime >= otherStartTime

2、逆向思维

判断两个时间段交集、时间重叠问题_c#_02

代码如下

!(otherEndTime < oneStartTime || otherStartTime > oneEndTime)

3、参考链接

​​1)判断两个时间段范围是否有交集
​​​2)SQL中的时间重叠问题​​

若本文有帮助到阅读本文的同学,欢迎点赞、关注、收藏,互相学习交流。