`

java获取本月最后一天

 
阅读更多
java获取本月第一天或者最后一天方法

@Test
    public void lastDayOfMonth(){
        //LocalDate localDate = LocalDate.now();
        LocalDate localDate =LocalDate.of(2020, 2, 20);
        System.out.println("localDate = " + localDate);
        //当月最后一天
        LocalDate lastDay = localDate.with(TemporalAdjusters.lastDayOfMonth());
        System.out.println("lastDay = " + lastDay);
        //当月第一天
        LocalDate firstDay = localDate.with(TemporalAdjusters.firstDayOfMonth());
        System.out.println("firstDay = " + firstDay);
    }


Java8日期工具类:获取周、季和年的第一天和最后一天

public class DateUtil {

    private static final SimpleDateFormat sdf = new SimpleDateFormat("yyyy/MM/dd");

    /**
     * 格式化日期为指定的日期格式
     * @param date 时间参数
     * @return 时间毫秒数
     */
    public static String parseData(Date date){
        return sdf.format(date);
    }

    /**
     * 格式化当前日期为指定的日期格式
     * @return 时间毫秒数
     */
    public static String parseNowData(){
        return parseData(new Date());
    }

    /**
     * 获取本月的日期第一天
     * @return date
     */
    public static Date getFirstDayOfMonth(){
        return getFirstDayOfMonth(new Date());
    }

    /**
     * 获取某个时间所在月的日期第一天
     * @param date  日期
     * @return  时间毫秒数
     */
    public static Date getFirstDayOfMonth(Date date){
        Calendar calendar = Calendar.getInstance();
        calendar.setTime(date);
        calendar.set(Calendar.DAY_OF_MONTH, calendar.getActualMinimum(Calendar.DAY_OF_MONTH));
        return calendar.getTime();
    }

    /**
     * 获取本月日期的最后一天
     * @return 时间毫秒数
     */
    public static Date getLastDayOfMonth(){
        return getLastDayOfMonth(new Date());
    }

    /**
     * 获取某个时间所在月的日期第一天
     * @param date 日期
     * @return 时间毫秒数
     */
    public static Date getLastDayOfMonth(Date date){
        Calendar calendar = Calendar.getInstance();
        calendar.setTime(date);
        calendar.set(Calendar.DAY_OF_MONTH, calendar.getActualMaximum(Calendar.DAY_OF_MONTH));
        return calendar.getTime();
    }

    /**
     * 获取当前季度的第一天
     * @return 时间毫秒数
     */
    public static Date getFirstDayOfQuarter(){
        return getFirstDayOfQuarter(new Date());
    }

    /**
     * 获取时间所在季度的第一天
     * @param date 日期
     * @return 时间毫秒数
     */
    public static Date getFirstDayOfQuarter(Date date){
        Calendar calendar = Calendar.getInstance();
        calendar.setTime(date);
        int remainder = calendar.get(Calendar.MONTH)  % 3;
        int month = remainder != 0 ? calendar.get(Calendar.MONTH) - remainder: calendar.get(Calendar.MONTH);
        calendar.set(Calendar.MONTH, month);
        calendar.set(Calendar.DAY_OF_MONTH, calendar.getActualMinimum(Calendar.DAY_OF_MONTH));
        return calendar.getTime();
    }

    /**
     * 获取当前季度的最后一天
     * @return 时间毫秒数
     */
    public static Date getLastDayOfQuarter(){
        return getLastDayOfQuarter(new Date());
    }

    /**
     * 获取时间所在季度的最后一天
     * @param date 日期
     * @return 时间毫秒数
     */
    public static Date getLastDayOfQuarter(Date date){
        Calendar calendar = Calendar.getInstance();
        calendar.setTime(date);
        int remainder = (calendar.get(Calendar.MONTH) + 1) % 3;
        int month = remainder != 0 ? calendar.get(Calendar.MONTH) + (3 - remainder) : calendar.get(Calendar.MONTH);
        calendar.set(Calendar.MONTH, month);
        calendar.set(Calendar.DAY_OF_MONTH, calendar.getActualMaximum(Calendar.DAY_OF_MONTH));
        return calendar.getTime();
    }

    /**
     * 获取当前年份的第一天
     * @return 时间毫秒数
     */
    public static Date getFirstDayOfYear(){
        return getFirstDayOfYear(new Date());
    }

    /**
     * 获取时间所在年份的第一天
     * @param date 日期
     * @return 时间毫秒数
     */
    public static Date getFirstDayOfYear(Date date){
        Calendar currCal=Calendar.getInstance();
        Calendar calendar = Calendar.getInstance();
        calendar.clear();
        currCal.setTime(date);
        calendar.set(Calendar.YEAR,currCal.get(Calendar.YEAR));
        return calendar.getTime();
    }

    /**
     * 获取当前年份的最后一天
     * @return 时间毫秒数
     */
    public static Date getLastDayOfYear(){
        return getLastDayOfYear(new Date());
    }

    /**
     * 获取时间所在年份的最后一天
     * @param date 日期
     * @return 时间毫秒数
     */
    public static Date getLastDayOfYear(Date date){
        Calendar currCal= Calendar.getInstance();
        Calendar calendar = Calendar.getInstance();
        calendar.clear();
        currCal.setTime(date);
        calendar.set(Calendar.YEAR,currCal.get(Calendar.YEAR));
        calendar.roll(Calendar.DAY_OF_YEAR,-1);
        return calendar.getTime();
    }

}
分享到:
评论

相关推荐

    java 获取时间 本周本年本月第一天最后一天

    ### Java 获取时间:本周、本年、本月的第一天与最后一天 在Java中,通过`Calendar`类可以方便地操作日期。以下将详细介绍如何利用`Calendar`类来获取本周、本年、本月的第一天和最后一天的具体实现方法。 #### ...

    java 获取上月、一个月最后一天、周一、周日、本月日期

    Java 获取上月、一个月最后一天、周一、周日、本月日期是 Java 日期处理中的一些常见操作。下面我们将详细介绍这些操作的实现方法。 一、获取上月 获取上月可以使用 Calendar 类的 add 方法,减去一个月份。然后...

    java代码获取当前月第一天和最后一天的毫秒值(csdn)————程序.pdf

    在Java编程中,有时我们需要获取特定月份的第一天和最后一天的毫秒值,这在处理时间范围、数据统计或者日志记录等场景中非常常见。本文将详细解释如何使用Java的`Calendar`类来实现这一功能,以满足上述标题和描述的...

    获取当月的第一天和最后一天

    在Java开发中,获取当前月份的第一天和最后一天是一个常见的需求,尤其是在处理日期相关的业务逻辑时,如统计月度数据、生成月度报告等场景。本文将深入解析如何利用Java中的`Calendar`类和`SimpleDateFormat`类来...

    java获取某一时间

    3. **获取当前日期、本周周一日期、本月第一天和最后一天的具体实现** 4. **计算两个日期之间的天数差** ### 1. Java 时间类的基础介绍 在 Java 中,处理日期和时间的主要类有 `java.util.Date`、`java.util....

    java获取每月的最后一天实现方法

    Java 获取每月的最后一天实现方法是指在 Java 编程语言中获取当前月份的最后一天的日期。下面是实现该功能的详细方法。 首先,我们需要使用 Java 的 Calendar 类来实现该功能。Calendar 类是一个抽象类,提供了对...

    获得指定月的和第一秒和最后一秒

    标题中的“获得指定月的和第一秒和最后一秒”指的是在编程中获取特定月份的第一天的零时零分零秒和最后一天的最后一秒的时间戳,这通常涉及到日期和时间的处理。在Java中,我们可以使用`java.time`包或者旧的`java....

    java的常用的获取时间的方法

    要获取某个月的第一天和最后一天,可以先设置`Calendar`的`DAY_OF_MONTH`为1,获取第一天,然后将月份加1并设置`DAY_OF_MONTH`为0来获取最后一天。例如: ```java Calendar monthStart = Calendar.getInstance(); ...

    Java实现获取某年某月第一天/最后一天的方法

    在Java编程语言中,获取某年某月的第一天和最后一天是常见的日期处理需求,这在数据分析、报表生成以及各种日期相关的业务逻辑中都非常重要。本文将详细讲解如何使用Java来实现这一功能。 首先,我们需要了解Java中...

    判断当前日期是否在本月的最后一周内

    我们可以获取本月的第一天,然后加上一个月的天数,得到下个月的第一天。接着,我们可以通过`TemporalAdjusters.previousOrSame(DayOfWeek)`找到下月第一天的前一个周日,这就是本月的最后一个完整周的开始。再计算...

    java获取今天、昨天、近一周、本周、本月时间段

    java获取今天、昨天、近一周、近两周、近三周、近一月、近两月、近三月、近半年、本周、上周、本月、上月时间段

    Java获取各种时间

    - `getThisSeasonTime(int month)`:获取本季度第一天到最后一天的日期范围,这需要根据给定的月份确定季度。 此外,`TimeTest.getTwoDay()`方法用于计算两个日期之间的间隔天数,这可以通过将日期转换为毫秒,然后...

    Java日期工具类

    Java日期工具类 1、日期的各种格式化 ...20、获得当前月份的最后一天 21、获取上月的第一天 22、获取上月的最后一天 23、根据传入的日期返回前一季度字符串 24、根据传入的日期返回相应的季度 .......

    java获得各种时间

    获取月份的第一天和最后一天 ```java System.out.println("获取本月第一天:" + tt.getFirstDayOfMonth()); System.out.println("获取上月第一天:" + tt.getPreviousMonthFirst()); System.out.println("获取上月...

    获取这个月最后一天日期.docx

    以下是如何在Java中获取月份的第一天和最后一天: 1. 获取本月第一天: ```java Calendar cal_1 = Calendar.getInstance(); // 获取当前日期 cal_1.add(Calendar.MONTH, 0); // 设置为1号,当前日期即为本月第...

    java中计算某个月的工作日总共几天

    这两个方法分别用于获取指定月份的第一天和最后一天。 ```java public static String getFristDayofMonth() throws Exception { Calendar calendar = Calendar.getInstance(); calendar.set(Calendar.DATE, ...

    java日期操作大全

    获取指定月份的最后一天是在获取了该月份第一天的基础上完成的。先调用`getMonthBegin()`方法获取月份的第一天,然后再次使用`Calendar`来增加一个月并减去一天,得到上一月的最后一天。 3. **日期格式化**: ...

    给定时间自动获取上月25号本月24号.doc

    4. 日期计算:在代码中,我们可以看到日期计算的实现,例如获取上个月的25号、本月的24号、本月的1号、本月的最后一天等。这些日期计算可以帮助我们实现业务逻辑中的日期处理。 5. 日期比较:在代码中,我们可以...

    Java获取各种常用时间方法

    除了上述几种日期之外,还可以通过类似的逻辑获取到其他日期,例如获取下周一、下周日、本月第一天、上月第一天、下月第一天等等。这些方法的实现逻辑基本一致,主要是通过调整`Calendar`对象中的日期来达到目的。 ...

    java 获取农历24节气时间

    Java 实现当前日期的农历日期显示以及节气显示,完美实现24节气

Global site tag (gtag.js) - Google Analytics