java 判断一个时间段是否在另外一个时间段之内
- 工作小总结&小工具类
- 时间:2023-08-02 13:47
- 2905人已阅读
简介
场景描述:时间段范围内图示:代码:public String judge(Date date1, Date date2, Date startTime, Date endDate) { if(date1 == null || date2&
🔔🔔🔔好消息!好消息!🔔🔔🔔
有需要的朋友👉:联系凯哥
场景描述:
时间段范围内图示:
代码:
功能一:只判断是否在时间段内
public static String judge(Date date1, Date date2, Date StartTime, Date EndDate) { long d1 = date1.getTime(); long d2 = date2.getTime(); long v = d2 - d1; long start = StartTime.getTime(); long end = EndDate.getTime(); if (((d1 - start) <= 0) && ((end - d2) <= 0) || ((d2 - start) >= 0) && ((d1 - end) <= 0) ){ return "包含"; } return "不包含"; }
测试代码:
public static void main(String[] args) throws ParseException { String d1 = "2022-04-26"; String d2 = "2022-04-28"; String d3 = "2022-04-24"; String d4 = "2022-04-27"; SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd"); //时间段1 Date date1 = formatter.parse(d1); Date date2 = formatter.parse(d2); //时间段2 Date date3 = formatter.parse(d3); Date date4 = formatter.parse(d4); //判断是否时间段1包含时间段2 String i = judge(date1, date2, date3, date4); System.out.println(i); }
功能二:同时判断是否在2个小时时间段内:
public String judge(Date date1, Date date2, Date startTime, Date endDate) { if(date1 == null || date2 == null || startTime == null || endDate == null) return "数据不能为空"; long d1 = date1.getTime(); long d2 = date2.getTime(); long v = d2-d1; long start = startTime.getTime(); long end = endDate.getTime(); if (((d1 - start) >0) && ((end - d2) >0)) return "date1-date2 在起始至结束的区间内"; else if ( v > 7200000) //2小时等于 7200000毫秒 return "date1-date2 不在起始至结束的区间内,但 这个时间段大于2个小时 "; return "date1-date2 不在起始至结束的区间内,并且 这个时间段小于2个小时"; }