获取某年某月的第一天日期和最后一天日期

代码如下:

/***
     * 获取某年某月的第一天日期
     * @param year
     * @param month
     * @return
     */
    public String getMonthFirst(Integer year, Integer month) {
        Calendar cal = Calendar.getInstance();
        // 设置年份
        cal.set(Calendar.YEAR, year);
        // 设置月份
        cal.set(Calendar.MONTH, month - 1);
        // 获取某月最小天数
        int firstDay = cal.getMinimum(Calendar.DATE);
        // 设置日历中月份的最小天数
        cal.set(Calendar.DAY_OF_MONTH, firstDay);
        // 格式化日期
        log.info(format.format(cal.getTime()));
        return format.format(cal.getTime());
    }

    /***
     * 获取某年某月的最后一天日期
     * @param year
     * @param month
     * @return
     */
    public String getMonthLast(Integer year, Integer month) {
        Calendar cal = Calendar.getInstance();
        // 设置年份
        cal.set(Calendar.YEAR, year);
        // 设置月份
        cal.set(Calendar.MONTH, month - 1);
        // 获取某月最小天数
        int lastDay = cal.getMaximum(Calendar.DATE);
        // 设置日历中月份的最大天数
        cal.set(Calendar.DAY_OF_MONTH, lastDay);
        // 格式化日期
        log.info(format.format(cal.getTime()));
        return format.format(cal.getTime());
    }
****************************************************************************************

也可以用Java8新特性去获取,更方便,LocalDateTime、 LocalDate中有很多方法,很适合使用

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章