场景
两个时间段,判断是否有交集。
思想是:
找到两个时间段开始时间的最大值和结束时间的最小值。
如果开始时间的最大值小于等于结束时间的最小值则说明这两个时间段有交集。
注:
博客:
https://blog.csdn.net/badao_liumang_qizhi
关注公众号
霸道的程序猿
获取编程相关电子书、教程推送与免费下载。
实现
/***
*
* @param startDateOne 第一个时间段的开始时间
* @param endDateOne 第一个时间段的结束时间
* @param startDateTwo 第二个时间段的开始时间
* @param endDateTwo 第二个时间段的结束时间
* @return
*/
public static Boolean IsInterSection(Date startDateOne,Date endDateOne,Date startDateTwo,Date endDateTwo)
{
Date maxStartDate = startDateOne;
if(maxStartDate.before(startDateTwo))
{
maxStartDate = startDateTwo;
}
Date minEndDate = endDateOne;
if(endDateTwo.before(minEndDate))
{
minEndDate = endDateTwo;
}
if(maxStartDate.before(minEndDate) || (maxStartDate.getTime() == minEndDate.getTime()))
{
return true;
}
else {
return false;
}
}
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/136529.html