上述代码日期那天正好是星期日,获取的时间不对,如何修改
时间: 2024-04-11 07:27:35 浏览: 23
如果您希望在星期日时也能正确获取本周的起止时间,可以使用以下修改后的代码:
```java
import java.text.SimpleDateFormat;
import java.util.Calendar;
public class Main {
public static void main(String[] args) {
Calendar calendar = Calendar.getInstance();
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd");
// 获取本周第一天
calendar.set(Calendar.DAY_OF_WEEK, calendar.getFirstDayOfWeek());
String firstDayOfWeek = dateFormat.format(calendar.getTime());
// 获取本周最后一天
calendar.add(Calendar.DAY_OF_WEEK, 6);
String lastDayOfWeek = dateFormat.format(calendar.getTime());
System.out.println("本周起始日期:" + firstDayOfWeek);
System.out.println("本周结束日期:" + lastDayOfWeek);
}
}
```
这段代码中,我们使用 `calendar.getFirstDayOfWeek()` 来获取当前日历的第一天(通常为星期日或星期一)。然后,我们将 `calendar.set(Calendar.DAY_OF_WEEK, calendar.getFirstDayOfWeek())` 用于设置日期为本周的第一天。
接下来,我们使用 `calendar.add(Calendar.DAY_OF_WEEK, 6)` 将日期增加6天,以获取本周的最后一天。
这样,无论当前是星期日还是其他任何一天,都能正确计算出本周的起止时间。