LocalDateTime获取上周六时间
时间: 2023-11-16 13:00:11 浏览: 91
可以通过获取当前时间,然后获取今天是周几,将当前时间向前推一个星期,再加上(6-当前周几),即可获取上周六的时间。代码如下:
```java
LocalDateTime localDateTime = LocalDateTime.now();
int dayOfWeek = localDateTime.getDayOfWeek().getValue();
LocalDateTime lastSaturday = localDateTime.minusWeeks(1).plusDays(6 - dayOfWeek);
System.out.println(lastSaturday);
```
输出结果为上周六的时间。
相关问题
LocalDateTime获取上周六开始时间
要获取上周六的开始时间,可以按照以下步骤进行操作:
1. 获取当前时间的LocalDateTime对象。
2. 获取当前时间是周几,用dayOfWeek表示。
3. 如果当前时间是周六,直接减去一周即可得到上周六的开始时间。
4. 如果当前时间不是周六,先减去当前时间是周几的天数,再减去一周即可得到上周六的开始时间。
5. 最后将上周六的开始时间格式化输出即可。
代码如下:
```
LocalDateTime now = LocalDateTime.now(); // 获取当前时间
int dayOfWeek = now.getDayOfWeek().getValue(); // 获取当前时间是周几,1表示周一,7表示周日
LocalDateTime lastSaturday;
if (dayOfWeek == 6) { // 如果当前时间是周六
lastSaturday = now.minusWeeks(1); // 直接减去一周即可得到上周六的开始时间
} else {
lastSaturday = now.minusDays(dayOfWeek).minusWeeks(1); // 先减去当前时间是周几的天数,再减去一周即可得到上周六的开始时间
}
String startTime = lastSaturday.withHour(0).withMinute(0).withSecond(0).format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")); // 将上周六的开始时间格式化输出
System.out.println(startTime);
```
LocalDateTime获取当天开始时间
可以使用Java 8中的LocalDateTime类来获取当天的开始时间。具体实现如下:
```
LocalDateTime now = LocalDateTime.now();
LocalDateTime startOfDay = now.with(LocalTime.MIN);
```
其中,`now`表示当前时间,`LocalTime.MIN`表示当天的最小时间,即00:00:00。
阅读全文