`

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;
}

转转请注明出处!
  • 大小: 18.8 KB
分享到:
评论
3 楼 悲伤的小脑 2013-07-23  
这个少了 种情况吧。
就是一个时间段完全包含另外一个时间段,这应该也算是有交集把。
2 楼 afeifqh 2012-09-05  
zhwtg 写道
else if判断条件错了,应该是<=end.getTime()

+1
1 楼 zhwtg 2012-08-06  
else if判断条件错了,应该是<=end.getTime()

相关推荐

    java 判断两个时间段是否重叠的案例.docx

    "java 判断两个时间段是否重叠的案例" 本文主要介绍了如何在 Java 中判断两个时间段是否重叠的案例。时间段是指具有起始时间和终止时间的时间范围,在实际开发中,我们经常需要判断两个时间段是否存在重叠的情况。...

    求一个时间是否在两组时间段交集内

    将2组时间段合并求交集,再判断一个时间是否在其中

    java 判断两个时间段是否重叠的案例

    Java 判断两个时间段是否重叠的案例 在 Java 中,判断两个时间段是否重叠是一种常见的需求,特别是在业务逻辑中需要检查时间段的交叉情况时。在本文中,我们将介绍如何使用 Java 判断两个时间段是否重叠,并提供...

    java求集合的并集、交集、补集、差集和对称差集

    写得比较简单,随便看看就好 该代码是离散数学的一些简单运算

    在EXCEL中比较数据库表的字段是否一致

    接着,使用集合的交集和差集方法,找出两个集合之间的共同字段和不同字段。最后,输出结果。 5. **数据库连接工具**:如果你的Excel数据直接来源于数据库,可以考虑使用数据库管理工具,如MySQL Workbench、SQL ...

    计算机二级考试Java真题

    17. **字符串比较**:在Java中,用==比较两个字符串对象时,比较的是引用是否相同,不是内容,因此s1=s2的结果是false,输出为"false"。 以上是对计算机二级考试Java真题部分题目涉及知识点的详细解析,这些内容...

    JAVA按钮的移动不重叠

    每过一段时间,计时器触发事件,更新按钮的位置,并再次检查是否有重叠。这种方法可以让按钮看起来像是在平滑地移动,而不是瞬间跳跃到新位置。 5. **自定义绘图**: 如果默认的布局管理器和组件功能无法满足需求...

    2006年9月全国计算机等级考试二级Java试题.

    7. **算法复杂度**:算法的时间复杂度和空间复杂度是衡量算法效率的两个重要指标,它们之间没有必然的对应关系,即一个算法的时间复杂度大并不意味着空间复杂度小,反之亦然。 8. **顺序查找**:在长度为64的有序...

    flink 中文教程

    - **Inner Join**:只保留两个流的交集。 - **Outer Join**:包含两个流的所有元素,缺失的部分用 null 表示。 - **Temporal Join**:处理时间相关的连接操作,适用于事件时间场景。 6. **复杂事件处理(CEP)**...

    最全的Java面试题

    - **Session Beans**:处理业务逻辑,分为有状态(Stateful)和无状态(Stateless)两种。有状态会话Bean维护与客户端的会话状态,无状态则不会。 - **Entity Beans**:代表持久化数据,类似于关系数据库中的表。其...

    Android应用源码之(多矩形碰撞).zip

    对于矩形,我们可以使用`Rect`类,它提供了多种方法来检查两个矩形之间的关系,比如`intersects()`方法用于判断两个矩形是否有交集。以下是一个简单的碰撞检测的基本步骤: 1. 定义矩形:创建`Rect`对象,分别代表...

    常见数组面试题

    首先判断当前区间是否包含一个或两个元素,如果是,则直接确定最大值和最小值;如果不是,则将数组分成两半,分别递归地计算左右两边的最大值和最小值,最后比较左右两边的最大值和最小值,从而得出整个数组的最大值...

    一个更快的带有期限的作业排序问题,排序算法数据结构 最快的排序算法

    其中使用了并查集来记录每个时间段是否已被占用,以及如何进行作业的合并。 #### 4. Insertionsort 函数 ```c++ voidInsertionsort(int*D,intn) {//将D中的元素按非增次序分类 //... } ``` 插入排序算法用于对...

    2024年互联网面试算法常见100题精析.pdf

    例如,第350题“两个数组的交集”要求找到两个已排序数组的共同元素。通过设立两个指针分别遍历两个数组,比较指针所指元素,当元素相等时将其添加到结果集中。如果数组已排序,这种方法的效率更高。通过这种方式,...

    commons-lang常用

    - **日期范围查询**:可以快速判断一个日期是否位于两个给定日期之间。 #### 五、`StopWatch` `StopWatch`类用于性能监控,特别是代码段执行时间的测量,其主要功能有: - **启动与停止计时器**:可启动多个计时...

    恒生公司2011校园招聘笔试题

    第二题要求找到两个数组的交集,可以使用双指针或哈希表的方法解决。 这份笔试题体现了恒生公司在招聘时对候选人的技术基础和逻辑思维能力的重视,涵盖的内容全面,对理解软件开发的全生命周期和关键技能有着积极的...

    自定义view太极图案

    为了实现动画效果,开发者可能会在自定义View的onDraw()方法中加入时间和状态的判断,动态调整Path的形状,例如改变圆的大小、位置或旋转角度,从而实现太极图的动态流动效果。 文件`OpView.java`很可能是这个...

    2021-2022计算机二级等级考试试题及答案No.3405.docx

    12. 数据库操作:通过交集操作,可以从两个关系R和S中找出它们共有的记录,得到关系T。 13. 清除列表框内容:在许多编程环境中,清除列表框内容的常用方法是`Clear`。 14. 函数返回值:函数`fun(int *p)`返回形参p...

    华东电子考试题.doc

    当智者问a是否有骑士时,a说没有,这意味着a要么是无赖,要么两个都是无赖,因为如果a是骑士,他会说有至少一个骑士(即他自己)。 - 第七题是逻辑推理题,根据给出的信息可以推断出每个旅客去的国家。 4. **...

Global site tag (gtag.js) - Google Analytics