跟据LocalDate时间 获取本周的开始时间 、本月的开始时间 、昨日时间、上周开始时间和上周结束时间、上个月开始时间和上个月结束时间
时间: 2024-06-13 16:06:22 浏览: 11
以下是根据LocalDate时间获取本周的开始时间、本月的开始时间、昨日时间、上周开始时间和上周结束时间、上个月开始时间和上个月结束时间的代码示例:
```java
import java.time.LocalDate;import java.time.temporal.TemporalAdjusters;
public class DateUtils {
// 获取本周的开始时间
public static LocalDate getStartOfWeek(LocalDate date) {
return date.with(TemporalAdjusters.previousOrSame(LocalDate.of(1, 1, 1))).with(TemporalAdjusters.previousOrSame(
TemporalAdjusters.ofDateAdjuster(localDate -> localDate.plusDays(1 - localDate.getDayOfWeek().getValue()))));
}
// 获取本月的开始时间
public static LocalDate getStartOfMonth(LocalDate date) {
return date.with(TemporalAdjusters.previousOrSame(LocalDate.of(1, 1, 1))).with(TemporalAdjusters.firstDayOfMonth());
}
// 获取昨日时间
public static LocalDate getYesterday(LocalDate date) {
return date.minusDays(1);
}
// 获取上周开始时间
public static LocalDate getStartOfLastWeek(LocalDate date) {
return getStartOfWeek(date.minusWeeks(1));
}
// 获取上周结束时间
public static LocalDate getEndOfLastWeek(LocalDate date) {
return getStartOfWeek(date).minusDays(1);
}
// 获取上个月开始时间
public static LocalDate getStartOfLastMonth(LocalDate date) {
return getStartOfMonth(date.minusMonths(1));
}
// 获取上个月结束时间
public static LocalDate getEndOfLastMonth(LocalDate date) {
return getStartOfMonth(date).minusDays(1);
}
}
```
调用示例:
```java
LocalDate now = LocalDate.now();
System.out.println("本周开始时间:" + DateUtils.getStartOfWeek(now));
System.out.println("本月开始时间:" + DateUtils.getStartOfMonth(now));
System.out.println("昨日时间:" + DateUtils.getYesterday(now));
System.out.println("上周开始时间:" + DateUtils.getStartOfLastWeek(now));
System.out.println("上周结束时间:" + DateUtils.getEndOfLastWeek(now));
System.out.println("上个月开始时间:" + DateUtils.getStartOfLastMonth(now));
System.out.println("上个月结束时间:" + DateUtils.getEndOfLastMonth(now));
```
输出示例:
```
本周开始时间:2022-01-10
本月开始时间:2022-01-01
昨日时间:2022-01-12
上周开始时间:2022-01-03
上周结束时间:2022-01-09
上个月开始时间:2021-12-01
上个月结束时间:2021-12-31
```
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![txt](https://img-home.csdnimg.cn/images/20210720083642.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)