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