获取整天时间的工具类 --DateUtil.getPointTime

业务场景:需要传两个时间参数作为sql查询条件,如:2019-5-12 00:00:00    到   2019-5-12 23:59:59

那么你想你可以怎么来获取这个比较准的一个时间定义呢?

好!先看测试使用案例

public class DateUtilTest {
    public static void main(String[] args) {
        /**
         * getPointTime(int)
         * 0代表当天,-1代表昨天,1代表明天
         * 返回结果值 String[] timeStr
         * timeStr[0]:开始时间
         * timeStr[1]:结束时间
         * */
        String[] timeStr = getPointTime(-1);
        String beginTime = timeStr[0];
        String endTime = timeStr[1];
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        try {
            System.out.println("开始时间:" + sdf.parse(beginTime));
            System.out.println("结束时间:" + sdf.parse(endTime));
        } catch (ParseException e) {
            e.printStackTrace();
        }
    }

}

结果图:获取整天时间的工具类 --DateUtil.getPointTime_第1张图片

 

看 DateUtil.getPointTime 的源码!

/**
 * 处理时间工具
 * @author wei.liu5
 */
public class DateUtil {

    /**一天当中的开始时间*/
    private final static String BEGIN_TIME = " 00:00:00";
    /**一天当中的结束时间*/
    private final static String END_TIME = " 23:59:59";


    public static String[] getPointTime(int day){
        String[] dayArray ={getAssignDay(day) + BEGIN_TIME,getAssignDay(day) + END_TIME};
        return dayArray;
    }
    /**
     *
     * @param day 0表示今天,-1代表昨天 1代表明天
     * @return
     */
    private static String getAssignDay(int day){
        SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
        Calendar calendar = Calendar.getInstance();
        calendar.setTime(new Date());
        calendar.add(Calendar.DATE, day);
        String today = format.format(calendar.getTime());//当前日期
        return today;
    }
}

以后就可以方便的拿到某天的一整天的时段了,以后会继续优化!

你可能感兴趣的:(Java工具类,Java基础篇)