java 判断两个时间段是不是有交集

时间:2022-02-06 21:52:07

java 判断两个时间段是不是有交集

如上图:X Y  Z  分别为传来的开始时间可能位于数据库中时间段的位置。

X有三种可能

即传来的开始时间为与数据可中某条数据的开始位置!
      这样他的结束时间就有三种可能
       1.位于数据库中开始时间(start)之前
       2.位于数据库中开始时间(start)与结束时间(end)之间
       3.位于数据库中结束时间(end)之后

Y 有两种种可能

1.位于数据库中开始时间(start)与结束时间(end)之间
       2.位于数据库中结束时间(end)之后

Z 只有一种可能

位于数据库中结束时间(end)之后

有了以上的分析就很明了了!
即传来的开始时间是startTime 结束时间endTime

if((startTime.getTime()<=start.getTime()) &&

endTime.getTime()>=start.getTime())){
 
return true;

}else if((startTime.getTime()>=start.getTime())&&
        
             startTime.getTime()<=endTime.getTime()){
return true;
}else{
return false;
}

转转请注明出处!

1 楼
zhwtg
2012-08-06
else if判断条件错了,应该是<=end.getTime()
2 楼
afeifqh
2012-09-05
zhwtg 写道
else if判断条件错了,应该是<=end.getTime()

+1