分享

Java Date获取本月的开始时间与结束时间

 程序员读书空间 2023-04-30 发布于浙江

获取本月的开始时间和结束时间,我们可以使用Calendar类来进行计算。以下是示例代码:

import java.text.SimpleDateFormat;import java.util.Calendar;import java.util.Date;
public class Main { public static void main(String[] args) { // 获取当前日期 Date currentDate = new Date(); // 创建Calendar实例 Calendar calendar = Calendar.getInstance(); // 设置日期为当前日期 calendar.setTime(currentDate); // 将日期设置为该月的第一天 calendar.set(Calendar.DAY_OF_MONTH, 1); // 获取本月的开始时间 Date startTime = calendar.getTime(); // 将日期设置为该月的最后一天 calendar.set(Calendar.DAY_OF_MONTH, calendar.getActualMaximum(Calendar.DAY_OF_MONTH)); // 获取本月的结束时间 Date endTime = calendar.getTime(); // 输出结果 SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); System.out.println("本月开始时间:" + dateFormat.format(startTime)); System.out.println("本月结束时间:" + dateFormat.format(endTime)); }}

在上面的示例代码中,我们首先获取当前日期,并创建一个Calendar对象并将日期设置进去。接着,将日期设置为该月的第一天,即使用set(Calendar.DAY_OF_MONTH, 1)方法将日期设置为1号。

然后,使用getActualMaximum(Calendar.DAY_OF_MONTH)方法获取该月的最后一天,并将日期设置为该天。最后,使用getTime()方法将Calendar对象转换为Date对象,并输出结果。

我们使用SimpleDateFormat类来格式化输出结果为"yyyy-MM-dd HH:mm:ss"的字符串格式。

可以将本月的结束时间调整为在当天的23:59:59,以获得本月结束的精确时间。以下是示例代码:

import java.text.SimpleDateFormat;import java.util.Calendar;import java.util.Date; public class Main {    public static void main(String[] args) {        // 获取当前日期        Date currentDate = new Date();        // 创建Calendar实例        Calendar calendar = Calendar.getInstance();        // 设置日期为当前日期        calendar.setTime(currentDate);        // 将日期设置为该月的第一天        calendar.set(Calendar.DAY_OF_MONTH, 1);        // 获取本月的开始时间        Date startTime = calendar.getTime();        // 将日期设置为该月的最后一天,并调整为23:59:59        calendar.set(Calendar.DAY_OF_MONTH, calendar.getActualMaximum(Calendar.DAY_OF_MONTH));        calendar.set(Calendar.HOUR_OF_DAY, 23);        calendar.set(Calendar.MINUTE, 59);        calendar.set(Calendar.SECOND, 59);        // 获取本月的结束时间        Date endTime = calendar.getTime();        // 输出结果        SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");        System.out.println("本月开始时间:" + dateFormat.format(startTime));        System.out.println("本月结束时间:" + dateFormat.format(endTime));    }}
复制代码

在上面的示例代码中,我们首先获取当前日期,并创建一个Calendar对象并将日期设置进去。接着,将日期设置为该月的第一天,即使用set(Calendar.DAY_OF_MONTH, 1)方法将日期设置为1号。

然后,使用getActualMaximum(Calendar.DAY_OF_MONTH)方法获取该月的最后一天,并将日期设置为该天。最后,调整小时、分钟和秒钟,以使日期为当天的23:59:59。

最后,使用getTime()方法将Calendar对象转换为Date对象,并输出结果。我们使用SimpleDateFormat类来格式化输出结果为"yyyy-MM-dd HH:mm:ss"的字符串格式。

    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多