java如何获取上周的日期
时间: 2023-07-18 14:35:50 浏览: 116
你可以使用 Java 中的 `Calendar` 类来获取上周的日期。下面是一个获取上周日期的示例代码:
```java
Calendar calendar = Calendar.getInstance();
calendar.add(Calendar.WEEK_OF_YEAR, -1);
Date lastWeekDate = calendar.getTime();
```
首先,我们获取当前日期时间的 `Calendar` 实例。然后,使用 `add` 方法将当前日期时间向前推一周,即减去一周的时间量。最后,使用 `getTime` 方法将 `Calendar` 实例转换为 `Date` 类型的日期。这样就可以获取到上周的日期了。
相关问题
java 获取上周的每一天日期
下面是 Java 代码获取上周的每一天日期:
```java
import java.time.DayOfWeek;
import java.time.LocalDate;
import java.time.format.DateTimeFormatter;
import java.time.temporal.TemporalAdjusters;
public class LastWeekDates {
public static void main(String[] args) {
LocalDate today = LocalDate.now();
LocalDate lastWeekStart = today.minusWeeks(1).with(TemporalAdjusters.previousOrSame(DayOfWeek.MONDAY));
LocalDate lastWeekEnd = today.minusWeeks(1).with(TemporalAdjusters.nextOrSame(DayOfWeek.SUNDAY));
for (LocalDate date = lastWeekStart; !date.isAfter(lastWeekEnd); date = date.plusDays(1)) {
System.out.println(date.format(DateTimeFormatter.ofPattern("yyyy-MM-dd")));
}
}
}
```
这个程序会输出上周每一天的日期,格式为 yyyy-MM-dd。你可以根据自己的需要修改日期格式和输出方式。
java 获取上周二到下周一的日期
好的,以下是 Java 代码获取上周二到下周一的日期:
```
import java.time.DayOfWeek;
import java.time.LocalDate;
import java.time.temporal.TemporalAdjusters;
LocalDate today = LocalDate.now();
LocalDate lastTuesday = today.with(TemporalAdjusters.previous(DayOfWeek.TUESDAY));
LocalDate nextMonday = today.with(TemporalAdjusters.next(DayOfWeek.MONDAY));
```
以上代码中,我使用了 `TemporalAdjusters` 类的 `previous()` 方法和 `next()` 方法来获取上周二和下周一的日期。`DayOfWeek` 枚举类表示星期几,这里我使用了 `DayOfWeek.TUESDAY` 和 `DayOfWeek.MONDAY` 来分别表示周二和周一。注意,这里的日期都是本地日期。
阅读全文