欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

获取当天、本月、本周、近7天、本年

程序员文章站 2022-06-15 22:46:15
...

获取时间工具类(获取当天、本月、本周、近7天、本年)


import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;

/**
 * @author wangZQ
 * @date 2021年12月06日 15:36
 */
public class getTimeUtils {
    public static void main(String[] args) {
        /**
         * 获取当天
         */
        System.out.println("当天时间:"+getToday()); //当天时间:2021-12-06

        /**
         * 获取本周
         */
        System.out.println("获取本周的第一天"+getWeekStart()); //获取本周的第一天2021-12-06
        System.out.println("获取本周的最后一天"+getWeekEnd()); //获取本周的最后一天2021-12-12

        /**
         * 获取近7天
         */
        System.out.println("获取近7天开始时间"+getSixDaysAgo(6));
        System.out.println("获取近7天截止时间"+getToday());


        /**
         *获取本月
         */
        System.out.println("获取本月开始日期"+getMonthStart()); //获取本月开始日期2021-12-01
        System.out.println("获取本月最后一天"+getMonthEnd()); //获取本月最后一天2021-12-31

        /**
         * 获取本年
         */
        System.out.println("获取本年开始日期"+getYearStart()); //获取本年开始日期2021-01-01
        System.out.println("获取本年最后一天"+getYearEnd()); //获取本年最后一天2021-12-31
    }

    /**
     * 获取今天
     * @return String
     * */
    public static String getToday(){
        return new SimpleDateFormat("yyyy-MM-dd").format(new Date());
    }
    /**
     * 获取昨天
     * @return String
     * */
    public static String getYestoday(){
        Calendar cal=Calendar.getInstance();
        cal.add(Calendar.DATE,-1);
        Date time=cal.getTime();
        return new SimpleDateFormat("yyyy-MM-dd").format(time);
    }
    /**
     * 获取本月开始日期 getMonthStart()
     * @return String
     * **/
    public static String getMonthStart(){
        Calendar cal=Calendar.getInstance();
        cal.add(Calendar.MONTH, 0);
        cal.set(Calendar.DAY_OF_MONTH, 1);
        Date time=cal.getTime();
        return new SimpleDateFormat("yyyy-MM-dd").format(time);
    }
    /**
     * 获取本月最后一天 getMonthEnd()
     * @return String
     * **/
    public static String getMonthEnd(){
        Calendar cal=Calendar.getInstance();
        cal.set(Calendar.DAY_OF_MONTH, cal.getActualMaximum(Calendar.DAY_OF_MONTH));
        Date time=cal.getTime();
        return new SimpleDateFormat("yyyy-MM-dd").format(time);
    }
    /**
     * 获取本周的第一天
     * @return String
     * **/
    public static String getWeekStart(){
        Calendar cal=Calendar.getInstance();
        cal.add(Calendar.WEEK_OF_MONTH, 0);
        cal.set(Calendar.DAY_OF_WEEK, 2);
        Date time=cal.getTime();
        return new SimpleDateFormat("yyyy-MM-dd").format(time);
    }
    /**
     * 获取本周的最后一天
     * @return String
     * **/
    public static String getWeekEnd(){
        Calendar cal=Calendar.getInstance();
        cal.set(Calendar.DAY_OF_WEEK, cal.getActualMaximum(Calendar.DAY_OF_WEEK));
        cal.add(Calendar.DAY_OF_WEEK, 1);
        Date time=cal.getTime();
        return new SimpleDateFormat("yyyy-MM-dd").format(time);
    }
    /**
     * 获取本年的第一天
     * @return String
     * **/
    public static String getYearStart(){
        return new SimpleDateFormat("yyyy").format(new Date())+"-01-01";
    }

    /**
     * 获取本年的最后一天
     * @return String
     * **/
    public static String getYearEnd(){
        Calendar calendar = Calendar.getInstance();
        calendar.set(Calendar.MONTH,calendar.getActualMaximum(Calendar.MONTH));
        calendar.set(Calendar.DAY_OF_MONTH,calendar.getActualMaximum(Calendar.DAY_OF_MONTH));
        Date currYearLast = calendar.getTime();
        return new SimpleDateFormat("yyyy-MM-dd").format(currYearLast);
    }

    /**
     * 获取几天前的时间
     * @param day
     * @return
     */
    public static String getSixDaysAgo(Integer day){
        Calendar cal=Calendar.getInstance();
        cal.add(Calendar.DATE,-day);
        Date time=cal.getTime();
        return new SimpleDateFormat("yyyy-MM-dd").format(time);
    }

}