java Date返回两个时间段相交时间段(区间)

public static Date[] getDateRangeCoincidence(Date begindate1,Date enddate1,Date begindate2,Date enddate2){

    //(b1---【b2-----e2】--e1)
    if(begindate1.compareTo(begindate2)<=0&&enddate1.compareTo(enddate2)>=0){
        return new Date[]{ begindate2,enddate2};
    }
    else if (begindate1.compareTo(begindate2)>=0&&enddate1.compareTo(enddate2)<=0){
        return new Date[]{ begindate1,enddate1};
    }
    //【b2---(b1---e2】----e1)
    else if(begindate1.compareTo(begindate2)>=0&&begindate1.compareTo(enddate2)<=0 &&
            enddate2.compareTo(begindate1)<=0){
        return new Date[]{ begindate1,enddate2};
    }
    //(b1---【b2---e1)----e2】
    else if (begindate1.compareTo(begindate2)<=0&&enddate1.compareTo(enddate2)<=0 &&
            enddate1.compareTo(begindate2)>=0){
        return new Date[]{ begindate2,enddate1};
    }
    return null;

}

你可能感兴趣的:(java Date返回两个时间段相交时间段(区间))