java 获取前两周周一和周日的时间戳
时间: 2024-12-11 12:06:02 浏览: 12
Java获取凌晨时间戳的方法分析
在Java中获取前两周的周一和周日的时间戳,可以使用`java.time`包中的`LocalDate`和`DayOfWeek`类。这里是一个示例代码片段:
```java
import java.time.LocalDate;
import java.time.temporal.TemporalAdjusters;
public class Main {
public static void main(String[] args) {
// 获取当前日期
LocalDate currentDate = LocalDate.now();
// 减去两周
int weeksBack = 2;
LocalDate twoWeeksAgo = currentDate.minusWeeks(weeksBack);
// 获取两周前的周一和周日时间戳
long mondayTimestamp = twoWeeksAgo.with(TemporalAdjusters.next(DayOfWeek.MONDAY)).toInstant().toEpochMilli();
long sundayTimestamp = twoWeeksAgo.with(TemporalAdjusters.last(DayOfWeek.SUNDAY)).toInstant().toEpochMilli();
System.out.println("两周前的周一时间戳: " + mondayTimestamp);
System.out.println("两周前的周日时间戳: " + sundayTimestamp);
}
}
```
这个代码首先获取当前日期,然后减去两周,接着分别使用`TemporalAdjusters.next(DayOfWeek.MONDAY)`得到两周前的下一个周一,以及`TemporalAdjusters.last(DayOfWeek.SUNDAY)`得到上周日。最后将这两个日期转换为时间戳。
阅读全文