Java获取指定日期的当月起止时间
时间: 2023-07-06 09:09:45 浏览: 180
获取指定日期的当月起始时间可以使用以下代码:
```java
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
public class Main {
public static void main(String[] args) {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Calendar calendar = Calendar.getInstance();
calendar.setTime(new Date()); // 设置指定日期
calendar.set(Calendar.DAY_OF_MONTH, 1); // 设置当前月的第一天
calendar.set(Calendar.HOUR_OF_DAY, 0);
calendar.set(Calendar.MINUTE, 0);
calendar.set(Calendar.SECOND, 0);
Date startOfMonth = calendar.getTime(); // 获取当月起始时间
System.out.println(sdf.format(startOfMonth));
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 endOfMonth = calendar.getTime(); // 获取当月结束时间
System.out.println(sdf.format(endOfMonth));
}
}
```
以上代码的输出结果为:
```
2022-02-01 00:00:00
2022-02-28 23:59:59
```
其中,`startOfMonth` 表示当前日期所在月份的起始时间,`endOfMonth` 表示当前日期所在月份的结束时间。
阅读全文