java获取时间00:00:00和23:59:59

  • Post author:
  • Post category:java


/**
 * 获取今天开始时间00:00:00
 * @return
 */
public static Date todayStart(Date date){
    Calendar start = Calendar.getInstance();
    start.setTime(date);
    start.set( Calendar.HOUR_OF_DAY,0);
    start.set( Calendar.MINUTE, 0);
    start.set( Calendar.SECOND,0);
    start.set( Calendar.MILLISECOND,0);
    return start.getTime();
}

/**
 * 获取今天增加天数后的结束时间23:59:59
 * @return
 */
public static Date addDayEnd(int day){
    Date date=todayStart(new Date());
    return DateUtils.addMilliseconds(DateUtils.addDays(date,day),-1000);
}

/**
 * 获取本月一号的00:00:00
 * @return
 */
public static Date monthStart(Date date){
    Calendar start = Calendar.getInstance();
    start.setTime(date);
    start.set(Calendar.DAY_OF_MONTH, 1);
    start.set( Calendar.HOUR_OF_DAY,0);
    start.set( Calendar.MINUTE, 0);
    start.set( Calendar.SECOND,0);
    start.set( Calendar.MILLISECOND,0);
    return start.getTime();
}

/**
 * 获取本月结束时间
 * @return
 */
public static Date monthEnd(Date date){
    Date result=monthStart(date);
    return DateUtils.addMilliseconds(DateUtils.addMonths(result,1),-1000);
}

/**
 * 获取星期一的00:00:00
 * @return
 */
public static Date weekStart(Date date){
    Calendar start = Calendar.getInstance();
    start.setTime(date);
    if(start.get(Calendar.DAY_OF_WEEK)==1){
        start.add(Calendar.DAY_OF_MONTH, -1);
    }
    start.set(Calendar.DAY_OF_WEEK, 2);
    start.set( Calendar.HOUR_OF_DAY,0);
    start.set( Calendar.MINUTE, 0);
    start.set( Calendar.SECOND,0);
    start.set( Calendar.MILLISECOND,0);
    return start.getTime();
}

/**
 * 获取时间月份
 * @return
 */
public static int getMonth(Date date){
    Calendar start = Calendar.getInstance();
    start.setTime(date);

    return start.get(Calendar.MONTH) + 1;
}

/**
 * 获取时间小时是否在范围内
 * @return
 */
public static boolean getIfHour(Date date,int startHour,int endHour){
    Calendar calendar = Calendar.getInstance();
    calendar.setTime(date);
    int hour=calendar.get(Calendar.HOUR_OF_DAY);
    boolean bool=false;
    if(hour>=startHour && hour<endHour){
        bool=true;
    }
    return bool;
}



版权声明:本文为xiao_jinpeng原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。