java工具:《获取指定日期23时59分59秒》

举报
刘大猫 发表于 2026/03/11 19:42:21 2026/03/11
【摘要】 java工具:《获取指定日期23时59分59秒》

image.png

@[toc]

一、介绍

这段代码定义了一个名为 getDateEnded 的静态方法,其核心功能是将任意给定的日期时间设置为当天的最后一刻,即获取该日期的结束时刻(23:59:59)。

方法逻辑解析:

  1. 接收参数:方法接收一个 Date 类型的参数 date,作为待处理的原始日期。
  2. 设置为当天末:通过 Calendar 工具类对传入的日期进行操作,将小时设置为 23、分钟设置为 59、秒钟设置为 59(注意这里未设置毫秒,因此毫秒字段会保留原始值,通常为 0 或默认值)。
  3. 返回结果:最终返回一个新的 Date 对象,代表指定日期当天的最后一秒。

应用场景:
这个方法在时间区间查询中应用广泛。当需要查询某一天范围内的数据时,通常需要以当天的结束时间作为查询条件的上限(小于等于该时间)。配合 getDateBegin 方法一起使用,可以精确构建一个从当天零点到当天最后一秒的完整时间区间,确保查询范围既覆盖全天数据,又不会侵入下一天的时间范围,避免数据遗漏或多查。

二、代码

/**
* author:Cui Yang
* 获取指定日期23时59分59秒
*/
public static Date getDateEnded(Date date) {
   Calendar calendar = Calendar.getInstance();
   calendar.setTime(date);
   calendar.set(Calendar.HOUR_OF_DAY, 23);
   calendar.set(Calendar.MINUTE, 59);
   calendar.set(Calendar.SECOND, 59);
   return calendar.getTime();
}

结果展示

System.out.println(getDateEnded(new Date()));   //Thu Jun 23 23:59:59 CST 2022
【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。