java 判断一个时间段是否在另外一个时间段之内
- 工作小总结&小工具类
- 时间:2023-08-02 13:47
- 3142人已阅读
简介
场景描述:时间段范围内图示:代码: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个小时";
}