判断一段时间是否包含令一段时间

package com.itheima.demo;

import cn.hutool.core.date.DateUtil;

import java.util.Date;

public class DateTimeTool {

    public static boolean getTimeLong(Date startDate, Date endDate, Date startTime, Date endTime) {
        //1.按开始时间和结束时间分组,中间"_"分割,map的key示例:2022-11-01 00:00:00_2022-11-01 16:00:00
        //2.然后循环map,按"_"分割key获取出查出来的开始时间和结束时间
        //3.获取开始时间和结束时间的时间戳
        long startDateLong = startDate.getTime();
        long endDateLong = endDate.getTime();
        //startTime和endTime为要同步的时间,前端参数传递过来的,开始时间+1秒,例如要同步2022-11-01 16:00:00加1秒就是2022-11-01 16:00:01
        //endTime减1秒
        startTime = DateUtil.offsetSecond(startTime, 1);
        endTime = DateUtil.offsetSecond(endTime, -1);
        //获取传递过来的时间戳
        long startTimeLong = startTime.getTime();
        long endTimeLong = endTime.getTime();
        //然后进行判断是否包含,如果包含就返回错误信息
        if (((startDateLong - startTimeLong) <= 0) && ((endTimeLong - endDateLong) <= 0) ||
                ((endDateLong - startTimeLong) >= 0) && ((startDateLong - endTimeLong) <= 0)) {
            return true;
        } else {
            return false;
        }
    }
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值