如何将java.util.Date实例的时间设置为00:00:00?

以下代码段显示了如何从java.util.Date对象中删除时间信息。下面代码片段中的static方法 removeTime() 将一个Date对象作为参数,并将返回一个新的Date对象,其中时,分,秒和毫秒信息已重置为零。为此,我们使用java.util.Calendar。要删除时间信息,我们设置的日历字段Calendar.HOUR_OF_DAY,Calendar.MINUTE,Calendar.SECOND和Calendar.MILLISECOND为零。

package org.nhooo.example.basic;

import java.util.Calendar;
import java.util.Date;

public class DateRemoveTime {
    public static void main(String[] args) {
        System.out.println("Now = " + removeTime(new Date()));
    }

    private static Date removeTime(Date date) {
        Calendar calendar = Calendar.getInstance();
        calendar.setTime(date);
        calendar.set(Calendar.HOUR_OF_DAY, 0);
        calendar.set(Calendar.MINUTE, 0);
        calendar.set(Calendar.SECOND, 0);
        calendar.set(Calendar.MILLISECOND, 0);
        return calendar.getTime();
    }
}

上面的代码片段的结果是:

Now = Thu Oct 24 00:00:00 WITA 2019