在Java中获取今日零时可以通过以下方式实现。我们先通过`java.util.Calendar`类来获取当前时间,然后将时分秒和毫秒设置为0,即可得到今日零时的时间。
下面是具体的代码实现:
```java
import java.util.Calendar;
public class GetMidnight {
public static void main(String[] args) {
// 获取当前时间
Calendar calendar = Calendar.getInstance();
// 将时分秒和毫秒设置为0
calendar.set(Calendar.HOUR_OF_DAY
0);
calendar.set(Calendar.MINUTE
0);
calendar.set(Calendar.SECOND
0);
calendar.set(Calendar.MILLISECOND
0);
// 输出今日零时时间
System.out.println("今日零时时间为:" + calendar.getTime());
}
}
```
在这段代码中,首先通过`Calendar.getInstance()`方法获取当前时间的`Calendar`对象,然后将时、分、秒和毫秒分别设置为0,即可得到今日零时的时间。*打印出这个时间。
这段代码的运行结果应该是输出当前日期零点的时间,如:`今日零时时间为:Wed May 26 00:00:00 GMT 2021`。
需要注意的是,`java.util.Calendar`类在Java 8之后已经被废弃,推荐使用`java.time`包下的类来处理日期和时间。可以使用`LocalDateTime`类来代替`Calendar`来获取今日零时:
```java
import java.time.LocalDateTime;
public class GetMidnight {
public static void main(String[] args) {
// 获取当前时间
LocalDateTime now = LocalDateTime.now();
// 将时分秒和毫秒设置为0
LocalDateTime midnight = now.withHour(0).withMinute(0).withSecond(0).withNano(0);
// 输出今日零时时间
System.out.println("今日零时时间为:" + midnight);
}
}
```
这段代码中用`LocalDateTime`类代替了`Calendar`,`LocalDateTime`类提供了更简洁、易用的API来处理日期和时间。同样地,将时、分、秒和毫秒分别设置为0,即可得到今日零时的时间。*打印出这个时间。
这是在Java中获取今日零时时间的两种不同的方法,分别使用了`Calendar`和`LocalDateTime`类来实现。通过这样的代码,可以方便地获取和处理日期和时间信息。