好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

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

使用Calendar类来进行计算

获取本月的开始时间和结束时间,我们可以使用Calendar类来进行计算。

以下是示例代码:

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

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));

     }

}

getActualMaximum方法

在上面的示例代码中,我们首先获取当前日期,并创建一个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,以获得本月结束的精确时间。

以下是示例代码:

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

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"的字符串格式。

以上就是java Date获取本月的开始时间与结束时间的详细内容,更多关于java Date获取本月时间的资料请关注其它相关文章!

原文链接:https://juejin.cn/post/7227825056977879100

查看更多关于java Date获取本月的开始时间与结束时间的详细内容...

  阅读:14次