java判断某个时间是否在规定的区段里面

package com.swift.oa;

import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;


public class Demo {


    public static void main(String[] args) throws Exception{

        String time="2022-04-18 07:48:10";

        Date date=null;
        SimpleDateFormat formatter=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        date=formatter.parse(time);


        SimpleDateFormat ft = new SimpleDateFormat ("yyyy-MM-dd hh:mm:ss");
        Date startTime = ft.parse("2022-04-18 07:30:00");
        Date endTime = ft.parse("2022-04-18 08:30:00");

        Date nowTime = date;

        boolean effectiveDate = isEffectiveDate(nowTime, startTime, endTime);
        if (effectiveDate) {
            System.out.println("当前时间在范围内");
        }else {
            System.out.println("当前时间在不在范围内");
        }
    }


    /**
     *
     * @param nowTime   当前时间
     * @param startTime    开始时间
     * @param endTime   结束时间
     * @return
     * @author sunran   判断当前时间在时间区间内
     */
    public static boolean isEffectiveDate(Date nowTime, Date startTime, Date endTime) {
        if (nowTime.getTime() == startTime.getTime()
                || nowTime.getTime() == endTime.getTime()) {
            return true;
        }

        Calendar date = Calendar.getInstance();
        date.setTime(nowTime);

        Calendar begin = Calendar.getInstance();
        begin.setTime(startTime);

        Calendar end = Calendar.getInstance();
        end.setTime(endTime);

        if (date.after(begin) && date.before(end)) {
            return true;
        } else {
            return false;
        }
    }
}

 

posted @ 2022-04-18 10:55  往事只能回味---  阅读(916)  评论(0)    收藏  举报