java 获取前一天日期
时间: 2023-11-21 14:58:33 浏览: 56
以下是两种Java获取前一天日期的方法:
1.使用LocalDate类获取前一天日期,并将其转化为指定格式的字符串:
```java
import java.time.LocalDate;
import java.time.format.DateTimeFormatter;
// 获取当前日期前一天的日期
LocalDate localDate = LocalDate.now().minusDays(1);
// 将日期转化为指定格式的字符串
String formattedDate = localDate.format(DateTimeFormatter.ofPattern("yyyy-MM-dd"));
System.out.println(formattedDate); // 输出:2021-03-01
```
2.使用SimpleDateFormat类获取前一天日期,并将其转化为指定格式的字符串:
```java
import java.text.SimpleDateFormat;
import java.util.Date;
// 获取当前日期的字符串表示
String dayNow = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date());
// 将日期字符串转化为Date对象
Date day = new SimpleDateFormat("yyyy-MM-dd").parse(dayNow.split(" ")[0]);
// 计算前一天的时间戳
long ms = day.getTime() - 1*24*3600*1000L;
// 将时间戳转化为Date对象
Date prevDay = new Date(ms);
// 将Date对象转化为指定格式的字符串
String dayBefore = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(prevDay);
System.out.println("昨天20点:" + dayBefore);
```