Calendar 获取指定日期所在月份的第一天、最后一天、下个月第一天等

获取时间方法 小结

一些获取时间的方法 直接上代码


 /***
     * 获取 日期所在 年
     *
     * */
    public static  int getYear(Date date){
        Calendar calendar = Calendar.getInstance();
        calendar.setTime(date);
        return calendar.get(Calendar.YEAR);
    }
    /***
     * 获取 日期所在 月
     *
     * */
    public static  int getMonth(Date date){

        Calendar calendar = Calendar.getInstance();
        calendar.setTime(date);
        return  calendar.get(Calendar.MONTH) + 1;
    }
    /***
     * 获取 日期 当前天数日
     *
     * */
    public static  int getDay(Date date){

        Calendar calendar = Calendar.getInstance();
        calendar.setTime(date);
        return  calendar.get(Calendar.DAY_OF_MONTH) ;
    }
    /***
     * 获取某一时间 所在 月份 的第一天
     *  比如 : 2020-01-20
     *     结果为: 2020-01-01 00:00:00
     * */
    public static Date getFirstDateOfMonth(Date date) {
        Calendar firstDate = Calendar.getInstance();
        firstDate.setTime(date);
        final int last = firstDate.getActualMinimum(Calendar.DAY_OF_MONTH);
        firstDate.set(Calendar.DAY_OF_MONTH, last);
        //当前日期 的 月份的 第一天)
        return  firstDate.getTime();
    }
    /***
     * 获取某一时间 所在 月份 的最后一天
     *  比如 : 2020-01-20
     *     结果为: 2020-01-31 00:00:00
     * */
    public static Date getEndDayOfMonth(Date date){

        Calendar lastDateMonth = Calendar.getInstance();
        lastDateMonth.setTime(date );
        final int lastDay = lastDateMonth.getActualMaximum(Calendar.DAY_OF_MONTH);
        lastDateMonth.set(Calendar.DAY_OF_MONTH, lastDay);
        //当前日期 的月份的最后一天
        return  lastDateMonth.getTime();
    }

    /***
     * 获取某一时间 所在 月份 下个月的第一天
     *  比如 : 2020-01-20
     *     结果为:2020-02-01 00:00:00
     * */
    public static Date getFirstDayOfNext(Date date){

        Calendar nextMonthFirst = Calendar.getInstance();
        nextMonthFirst.setTime(date);
        nextMonthFirst.set(Calendar.DAY_OF_MONTH, 1);
        nextMonthFirst.add(Calendar.MONTH, 1);
        return  nextMonthFirst.getTime();
    }
原文地址:https://www.cnblogs.com/xiaop27/p/13861526.html