Java获取上月份的开始结束时间返回Date类型
时间: 2023-07-05 18:21:42 浏览: 153
java的Date类型转换成MySQL的DateTime类型.docx
可以使用Java 8的`LocalDate`和`LocalDateTime`类来获取上个月份的开始和结束时间,然后将其转换为`Date`类型。
下面是示例代码:
```java
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.time.YearMonth;
import java.time.ZoneId;
import java.util.Date;
public class DateUtils {
public static Date getStartDateOfLastMonth() {
YearMonth lastMonth = YearMonth.now().minusMonths(1); // 上个月份
LocalDate firstDay = lastMonth.atDay(1); // 上个月份的第一天
LocalDateTime startOfDay = firstDay.atStartOfDay(); // 上个月份的第一天开始时间
return Date.from(startOfDay.atZone(ZoneId.systemDefault()).toInstant()); // 转换为Date类型
}
public static Date getEndDateOfLastMonth() {
YearMonth lastMonth = YearMonth.now().minusMonths(1); // 上个月份
LocalDate lastDay = lastMonth.atEndOfMonth(); // 上个月份的最后一天
LocalDateTime endOfDay = lastDay.atTime(23, 59, 59, 999999999); // 上个月份的最后一天结束时间
return Date.from(endOfDay.atZone(ZoneId.systemDefault()).toInstant()); // 转换为Date类型
}
}
```
调用`getStartDateOfLastMonth()`和`getEndDateOfLastMonth()`方法即可获取上个月份的开始和结束时间,返回的是`Date`类型。
阅读全文