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

转载于:https://www.cnblogs.com/tonykan/p/3469043.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值