java中获取当天0点和第二天0点的时间怎么写
时间: 2024-03-01 08:54:45 浏览: 38
可以使用Java中的`java.util.Calendar`和`java.util.Date`类来实现获取当天0点和第二天0点的时间。
获取当天0点的时间:
```java
Calendar cal = Calendar.getInstance();
cal.set(Calendar.HOUR_OF_DAY, 0);
cal.set(Calendar.MINUTE, 0);
cal.set(Calendar.SECOND, 0);
cal.set(Calendar.MILLISECOND, 0);
Date zeroTime = cal.getTime();
```
获取第二天0点的时间:
```java
Calendar cal = Calendar.getInstance();
cal.add(Calendar.DAY_OF_YEAR, 1);
cal.set(Calendar.HOUR_OF_DAY, 0);
cal.set(Calendar.MINUTE, 0);
cal.set(Calendar.SECOND, 0);
cal.set(Calendar.MILLISECOND, 0);
Date nextDayZeroTime = cal.getTime();
```
这里的思路是先获取当前时间的`Calendar`对象,然后设置相关的时间字段,最后通过`getTime()`方法获取`Date`对象。对于获取第二天0点的时间,需要先将`Calendar`对象的天数加1,再设置时间字段。
相关问题
我想使用java.util.Date获取当天0点和第二天0点的时间 代码应该怎么写
可以使用`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`对象。
java 怎么获取1天后的24点0分0秒的时间
可以使用Java的Calendar类来实现获取1天后的24点0分0秒的时间。具体实现如下:
```
Calendar calendar = Calendar.getInstance();
calendar.add(Calendar.DAY_OF_YEAR, 1);
calendar.set(Calendar.HOUR_OF_DAY, 24);
calendar.set(Calendar.MINUTE, 0);
calendar.set(Calendar.SECOND, 0);
Date date = calendar.getTime();
```
首先获取当前时间的Calendar实例。然后使用add方法将日期向后推1天。接着使用set方法将小时、分钟、秒分别设置为24、0、0,即表示第二天的0点。最后将Calendar实例转换为Date对象即可。