java判断某个日期在两个日期之间(区间) (包含或不包含两个日期)


我们先来看看用的API方法

这里的话看你传递的参数, 如果传递的是Date,那么可以使用, new Date().getTime()返回的long来判断,简单明了,但是要注意时间的干扰。 如果传递的是LocalDate ,那么可以按照如下方式: 主要是应用了这几个方法 

 

 

 

code:

 /**
    * <per>
    * <p>判断日期是否在指定日期区间 ,默认闭区间</p>
    * <per/>
    * @param dateStart
    * @param dateEnd
    * @param data
    * @return boolean
    * @throws
    * @Description : TODO Determining whether the date specified date range . default closed interval
    *                TODO 0: [date Start, date End] | 1: (date Start, date End) | 2:(date Start, date End ] | 3 :[date Start, date End)
    * @author Liruilong
    * @Date 2020/11/5 14:07
    **/
    public static boolean isContainDate(LocalDate dateStart,LocalDate dateEnd, String... data) {
        boolean b = false;
        final LocalDate planDate =LocalDate.parse(data[0]);
        String interval =  data.length > 1 ? data[1]:"0";
        switch (interval){
            case "0":{
                b =  ( planDate.isAfter(dateStart) && planDate.isBefore(dateEnd) )|| planDate.isEqual(dateEnd) || planDate.isEqual(dateStart);
                }break;
            case "1":{
                b =  ( planDate.isAfter(dateStart) && planDate.isBefore(dateEnd) );
                }break;
            case "2":{
                b =  ( planDate.isAfter(dateStart) && planDate.isBefore(dateEnd) ) || planDate.isEqual(dateEnd);
                }break;
            case "3":{
                b =  ( planDate.isAfter(dateStart) && planDate.isBefore(dateEnd) ) || planDate.isEqual(dateStart);
                }break;
            default:break;
        }
        return b;
    }

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM