java 获取本周起止时间
时间: 2023-06-30 08:27:03 浏览: 110
可以使用 Java 中的 Calendar 类来获取本周的起止时间。以下是一段示例代码:
```java
Calendar calendar = Calendar.getInstance();
int dayOfWeek = calendar.get(Calendar.DAY_OF_WEEK);
// 获取本周第一天的日期
calendar.add(Calendar.DAY_OF_WEEK, 2 - dayOfWeek);
Date startDate = calendar.getTime();
// 获取本周最后一天的日期
calendar.add(Calendar.DAY_OF_WEEK, 6);
Date endDate = calendar.getTime();
// 将日期格式化为字符串
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
String startStr = sdf.format(startDate);
String endStr = sdf.format(endDate);
System.out.println("本周起始日期:" + startStr);
System.out.println("本周结束日期:" + endStr);
```
在这个示例中,我们首先获取当前时间的 Calendar 实例,并使用 `get` 方法获取当前是周几。然后通过计算,获取本周的第一天和最后一天的日期,并将日期格式化为字符串。最后输出结果。
相关问题
java获取本周起止时间
以下是Java代码实现获取本周起止时间的方法:
```java
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
public class Main {
public static void main(String[] args) {
Calendar calendar = Calendar.getInstance();
Date now = new Date();
calendar.setTime(now);
int dayOfWeek = calendar.get(Calendar.DAY_OF_WEEK);
int days = calendar.getActualMaximum(Calendar.DAY_OF_MONTH);
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
calendar.add(Calendar.DATE, -(dayOfWeek - 2));
String beginDate = sdf.format(calendar.getTime());
calendar.add(Calendar.DATE, 6);
String endDate = sdf.format(calendar.getTime());
System.out.println("本周开始日期:" + beginDate);
System.out.println("本周结束日期:" + endDate);
}
}
```
解释一下代码:
1. 获取当前时间:`Calendar.getInstance()` 和 `new Date()` 可以获取当前时间。
2. 获取当前日期是星期几:`Calendar.DAY_OF_WEEK` 可以获取当前日期是星期几。
3. 获取当前月份的天数:`Calendar.getActualMaximum(Calendar.DAY_OF_MONTH)` 可以获取当前月份的天数。
4. 计算本周开始日期:用当前日期减去当前日期是星期几减二得到本周的开始日期。
5. 计算本周结束日期:用本周开始日期加上6天得到本周的结束日期。
最后输出结果为:
```
本周开始日期:2022-02-21
本周结束日期:2022-02-27
```
java 获取本周起止时间 返回Date
可以使用以下代码获取本周的起止时间:
```java
import java.time.DayOfWeek;
import java.time.LocalDate;
import java.time.format.DateTimeFormatter;
public class Main {
public static void main(String[] args) {
LocalDate today = LocalDate.now();
LocalDate startOfWeek = today.with(DayOfWeek.MONDAY);
LocalDate endOfWeek = today.with(DayOfWeek.SUNDAY);
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd");
String startOfWeekStr = startOfWeek.format(formatter);
String endOfWeekStr = endOfWeek.format(formatter);
System.out.println("本周起始时间:" + startOfWeekStr);
System.out.println("本周结束时间:" + endOfWeekStr);
}
}
```
输出结果如下:
```
本周起始时间:2022-02-28
本周结束时间:2022-03-06
```
阅读全文