目前网上有很多给日期添加时分秒的版本,但是都太复杂了、自己写了个版本,用起来还不错。
如下所示:
参数:只需要传递Date类型的日期即可
返回:Date类型,例如:2024-04-10 会返回 2024-04-10 00:00:00
// 获得某天最大时间 2020-02-19 23:59:59
private static Date getEndOfDay(Date date) {
LocalDateTime localDateTime = LocalDateTime.ofInstant(Instant.ofEpochMilli(date.getTime()), ZoneId.systemDefault());
LocalDateTime endOfDay = localDateTime.with(LocalTime.MAX);
return Date.from(endOfDay.atZone(ZoneId.systemDefault()).toInstant());
}
// 获得某天最小时间 2020-02-17 00:00:00
private static Date getStartOfDay(Date date) {
LocalDateTime localDateTime = LocalDateTime.ofInstant(Instant.ofEpochMilli(date.getTime()), ZoneId.systemDefault());
LocalDateTime startOfDay = localDateTime.with(LocalTime.MIN);
return Date.from(startOfDay.atZone(ZoneId.systemDefault()).toInstant());
}