前言

在日常开发中,我们经常需要获取某一天的开始时间和结束时间,然后再去做一些逻辑处理。这里提供两种demo。

java8之前

这种是采用手动设置日期的时分秒为需要的格式,具体代码如下

    @Testpublic void getLastDayTime() {Date date = new Date();Calendar calendar = Calendar.getInstance();calendar.setTime(date);//一天的开始时间 yyyy:MM:dd 00:00:00calendar.set(Calendar.HOUR_OF_DAY, 0);calendar.set(Calendar.MINUTE, 0);calendar.set(Calendar.SECOND, 0);calendar.set(Calendar.MILLISECOND, 0);Date dayStart = calendar.getTime();SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");String startStr = simpleDateFormat.format(dayStart);System.out.println("开始时间" + startStr);//一天的结束时间 yyyy:MM:dd 23:59:59calendar.set(Calendar.HOUR_OF_DAY, 23);calendar.set(Calendar.MINUTE, 59);calendar.set(Calendar.SECOND, 59);calendar.set(Calendar.MILLISECOND, 999);Date dayEnd = calendar.getTime();String endStr = simpleDateFormat.format(dayEnd);System.out.println("结束时间" + endStr);}

上述代码能实现功能,但是代码量有点迷。

java8的时间工具包

java种提供了新的时间处理工具,我们完全可以直接使用,具体代码如下

  @Testpublic void testLocalDateTime() {LocalDateTime startTime = LocalDateTime.of(LocalDate.now(), LocalTime.MIN);String startTimeStr = startTime.format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"));System.out.println("开始时间" + startTimeStr);LocalDateTime endTime = LocalDateTime.of(LocalDate.now(), LocalTime.MAX);String endTimeStr = endTime.format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"));System.out.println("结束时间" + endTimeStr);}

同样是获取开始时间和结束时间,代码量显而易见。下面是获取某一天的开始时间和截至时间

    public void getEndOfDay(Date date) {LocalDateTime localDateTime = LocalDateTime.ofInstant(Instant.ofEpochMilli(date.getTime()),ZoneId.systemDefault());LocalDateTime endOfDay = localDateTime.with(LocalTime.MAX);String endTimeStr = endOfDay.format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"));System.out.println("结束时间" + endTimeStr);}public void getStartOfDay(Date date) {LocalDateTime localDateTime = LocalDateTime.ofInstant(Instant.ofEpochMilli(date.getTime()), ZoneId.systemDefault());LocalDateTime startOfDay = localDateTime.with(LocalTime.MIN);String startTimeStr = startOfDay.format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"));System.out.println("开始时间" + startTimeStr);}

快速获取一天的开始时间和结束时间相关推荐

  1. Java获取指定年月的开始时间和结束时间

    文章目录 Java获取指定年月的开始时间和结束时间 Java获取指定年月的开始时间和结束时间 // 获取指定年指定月的开始天数和结束天数public static Map<String,Date ...

  2. 获取一天的开始时间和结束时间

    获取一天的开始时间和结束时间 package com.bos.test;import com.bos.common.file.FileThreadResource; import org.junit. ...

  3. android 通过当前日期获取这个礼拜的开始时间和结束时间

    /*** 获取这个礼拜的开始和结束时间* @return*/ public static Map<String, String> getDayWeek() {Map<String, ...

  4. Java 中的Date(获取一天的开始时间和结束时间)

    这两天写定时任务,需要每小时去执行和每天8点执行.如何从现在的时间,获取昨天的时间.现将代码整理如下 1.Mybatis中TimeStamp类型的时间,能够和Date类型的时间直接用' < ' ...

  5. java中获取一天的开始时间和结束时间

    首先得导入hutool的核心包依赖, 因为获取开始和结束时间用的hutool中的DateUtil工具类. <dependency><groupId>cn.hutool</ ...

  6. java获取一天的开始时间和结束时间

    java8 LocaleDateTime 获取 public static void main(String[] args) {LocalDateTime date = LocalDateTime.n ...

  7. java获取当前月的开始时间和结束时间

    maxDate获取的是当前月的天数 startTime拼接的本月的第一天 endTime拼接的是本月的最后一天 Calendar a = Calendar.getInstance();a.set(Ca ...

  8. java 一天的结束时间_java怎么获取一天的开始时间和结束时间

    标签: public static void main(String[] args) { Calendar c1 = new GregorianCalendar(); c1.set(Calendar. ...

  9. js获取下月时间_JS获取上月,本月,下月的开始时间与结束时间

    ``###JS获取上月,本月,下月的开始时间与结束时间(记录) //获取当天的时间 function getToday() { var date = new Date(); return date . ...

最新文章

  1. 递归思想解决输出目录下的全部文件
  2. 剑指offer23:从上到下打印二叉树
  3. GPRS流量计算方法(TCP/IP)
  4. Linux awk内部变量
  5. python培训比较好的机构-西安比较好的python培训机构推荐
  6. 黑马程序员pink老师前端入门教程,零基础必看的JavaScript基础语法视频教程(DOM,事件高级)
  7. c语言的数据类型复数型,C语言数据类型
  8. 图像处理中ct图的通道是多少_新一代安检CT机,智能安防领域又一明星产品
  9. SQA计划和验收测试规程设计
  10. html把图片定位在盒子中心,html – CSS在图像的右上角定位一个图标
  11. 用端口映射的办法使用矩池云隐藏的vnc功能
  12. Linux系统编程 -- 多线程间同步和互斥
  13. EBS相关日志和参数
  14. 大地测量学基础 | 时间系统
  15. ZOJ 3527 Shinryaku! Kero Musume 【树形DP[带简单环]】
  16. vue中pdf预览组件_pdf 在线预览之 vue-pdf插件
  17. Pandas基本教程
  18. 绘图_origin在一个页面上绘制多个图像x1y1和x2y2
  19. 类EMD的“信号分解方法”及MATLAB实现(第七篇)——EWT
  20. [Go实战]写一个简单的概率算法(抽奖)

热门文章

  1. getJSON同步异步
  2. 看图了解linux命令
  3. ulimit命令详解
  4. Learning Smoke Removal from Simulation
  5. 【计算机网络】TCP底层设计交互原理
  6. 视频编码中的块效应、振铃效应和呼吸效应分析
  7. 使用OpenCV获取图片亮度
  8. html div隐藏实例,js实现div延迟显示、隐藏实例
  9. Google Earth Engine(GEE)——导出数据到Google硬盘和云端存储!和最大像素限制导出
  10. spring——IOC控制反转(一)