我想使用java.util.Date获取当天0点和第二天0点的时间 代码应该怎么写
时间: 2024-03-01 16:54:47 浏览: 171
可以使用`java.util.Date`和`java.text.SimpleDateFormat`类来获取当天0点和第二天0点的时间。
获取当天0点的时间:
```java
Date date = new Date();
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd 00:00:00");
String zeroTimeStr = sdf.format(date);
Date zeroTime = sdf.parse(zeroTimeStr);
```
获取第二天0点的时间:
```java
Date date = new Date();
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd 00:00:00");
Calendar cal = Calendar.getInstance();
cal.setTime(date);
cal.add(Calendar.DAY_OF_YEAR, 1);
String nextDayZeroTimeStr = sdf.format(cal.getTime());
Date nextDayZeroTime = sdf.parse(nextDayZeroTimeStr);
```
这里的思路是先通过`SimpleDateFormat`类将当前时间格式化为字符串,然后再通过`parse()`方法将字符串解析为`Date`对象。对于获取第二天0点的时间,需要先将当前时间转换为`Calendar`对象,然后将天数加1,再将`Calendar`对象转换为字符串,最后再通过`parse()`方法将字符串解析为`Date`对象。
阅读全文