java 获取前一天的日期
时间: 2023-09-10 14:16:00 浏览: 69
您可以使用Java的`java.time`包来获取前一天的日期。下面是一个示例代码:
```java
import java.time.LocalDate;
public class Main {
public static void main(String[] args) {
LocalDate today = LocalDate.now();
LocalDate yesterday = today.minusDays(1);
System.out.println("前一天的日期是:" + yesterday);
}
}
```
这个示例中,我们使用`LocalDate.now()`方法获取当前日期,然后使用`minusDays(1)`方法获取前一天的日期。最后,我们打印出前一天的日期。
相关问题
java 获取前一天日期
以下是两种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);
```
java如何获取前一天的日期
可以使用Java中的Calendar类来获取前一天的日期,示例代码如下:
```
Calendar calendar = Calendar.getInstance(); // 获取当前日期
calendar.add(Calendar.DATE, -1); // 将日期向前推一天
Date yesterday = calendar.getTime(); // 获取前一天的日期
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); // 定义日期格式
String yesterdayStr = sdf.format(yesterday); // 将日期转换为字符串
System.out.println(yesterdayStr); // 输出前一天的日期
```
输出结果为:2021-12-06。其中,Calendar类中的add方法可以对日期进行偏移,负数表示向前偏移,正数表示向后偏移;SimpleDateFormat类可以将日期按照指定格式转换为字符串。