一.LocalDate用法

1.1.获取当前时间,最大时间,最小时间

/*** 获取当前时间,最大时间,最小时间*/@Testpublic void demo01() {LocalDate now = LocalDate.now();LocalDate max = LocalDate.MAX;LocalDate min = LocalDate.MIN;log.info("当前时间:" + now);log.info("获取最大时间:" + max);log.info("获取最小时间:" + min);}

1.2.自定义日期

 /*** 自定义日期*/@Testpublic void demo02() {LocalDate date = LocalDate.of(2019, 12, 24);log.info("自定义日期:" + date);}

1.3.获取当前日期是所在年的第几天、月的第几天、当前星期

/*** 获取当前日期是所在年的第几天、月的第几天、当前星期*/@Testpublic void demo03() {LocalDate now = LocalDate.now();int year = now.getDayOfYear();int month = now.getDayOfMonth();DayOfWeek week = now.getDayOfWeek();log.info("获取年份:" + year);log.info("获取月份:" + month);log.info("获取星期:" + week);}

1.4.获取当前月和当前月天数

/*** 获取当前月,当前月天数*/@Testpublic void demo04() {LocalDate now = LocalDate.now();Month month = now.getMonth();int monthValue = now.getMonthValue();int i = now.lengthOfMonth();log.info("当前月:" + month);log.info("当前月:" + monthValue);log.info("当前月天数:" + i);}

1.5.获取当前年份的天数和是否是闰年

/*** 获取当前年份的天数和是否是闰年*/@Testpublic void demo05() {LocalDate now = LocalDate.now();int i = now.lengthOfYear();boolean leapYear = now.isLeapYear();log.info("获取当前年的天数:" + i);log.info("获取当前年是否是闰年:" + leapYear);}

1.6.with指定年月日

/*** with指定年月日*/@Testpublic void demo06() {LocalDate now = LocalDate.now();LocalDate localDate = now.withDayOfMonth(1);LocalDate localDate1 = now.withDayOfYear(21);LocalDate localDate2 = now.withMonth(3);LocalDate localDate3 = now.withYear(2004);log.info("当月的指定日:" + localDate);log.info("获取今年第一月的指定日期:" + localDate1);log.info("今年指定月份,日为当天的日期:" + localDate2);log.info("指定年份的今天:" + localDate3);}

1.7.当前日期加减

 /*** 当前日期加减*/@Testpublic void demo07() {LocalDate now = LocalDate.now();LocalDate localDate = now.minusDays(1);LocalDate localDate1 = now.minusWeeks(1);LocalDate localDate2 = now.minusMonths(1);LocalDate localDate3 = now.minusYears(1);LocalDate localDate4 = now.plusDays(1);LocalDate localDate5 = now.plusWeeks(1);LocalDate localDate6 = now.plusMonths(1);LocalDate localDate7 = now.plusYears(1);log.info("当前日期的前一天:" + localDate);log.info("当前日期的前一星期:" + localDate1);log.info("当前日期的前一个月:" + localDate2);log.info("当前日期的前一年:" + localDate3);log.info("当前日期的后一天:" + localDate4);log.info("当前日期的后一星期:" + localDate5);log.info("当前日期的后一月:" + localDate6);log.info("当前日期的后一年:" + localDate7);}

二.LocalTime

2.1.获取当前时间

 /*** 获取当前时间*/@Testpublic void demo08() {LocalTime now = LocalTime.now();log.info("当前时间:" + now);}

2.2.指定时分秒

 /*** 指定时分秒*/@Testpublic void demo09() {LocalTime time1 = LocalTime.of(12, 9);LocalTime time2 = LocalTime.of(12, 9, 10);log.info("指定时分:" + time1);log.info("指定时分秒:" + time2);}

2.3.获取当前时间的时分秒

/*** 获取当前时间的时分秒*/@Testpublic void demo10() {LocalTime now = LocalTime.now();int hour = now.getHour();int minute = now.getMinute();int second = now.getSecond();log.info("当前时间的时:" + hour);log.info("当前时间的分:" + minute);log.info("当前时间的秒:" + second);}

2.4.替换当前的时分秒

/*** 替换时分秒*/@Testpublic void demo11() {LocalTime now = LocalTime.now();LocalTime time1 = now.withHour(1);LocalTime time2 = now.withMinute(21);LocalTime time3 = now.withSecond(31);log.info("替换当前的时:" + time1);log.info("替换当前的分:" + time2);log.info("替换当前的秒:" + time3);}

2.5.当前时间加减

 /*** 当前时间加减*/@Testpublic void demo12() {LocalTime now = LocalTime.now();LocalTime time1 = now.minusHours(1);LocalTime time2 = now.minusMinutes(1);LocalTime time3 = now.minusSeconds(1);LocalTime time4 = now.plusHours(1);LocalTime time5 = now.plusMinutes(1);LocalTime time6 = now.plusSeconds(1);log.info("当前时间减一小时:" + time1);log.info("当前时间减一分钟:" + time2);log.info("当前时间减一秒:" + time3);log.info("当前时间加一小时:" + time4);log.info("当前时间加一分钟:" + time5);log.info("当前时间加一秒:" + time6);}

三.LocalDateTime

3.1.获取当前时间

  /*** 获取当前时间*/@Testpublic void demo13() {LocalDateTime now = LocalDateTime.now();log.info("获取当前时间:" + now);}

3.2.指定日期

/*** 指定当前时间*/@Testpublic void demo14() {LocalDateTime now = LocalDateTime.now();LocalDateTime time1 = now.withYear(2012);LocalDateTime time2 = now.withMonth(12);LocalDateTime time3 = now.withDayOfMonth(23);LocalDateTime time4 = now.withHour(8);LocalDateTime time5 = now.withMinute(8);LocalDateTime time6 = now.withSecond(8);log.info("指定当前年份:" + time1);log.info("指定当前月份:" + time2);log.info("指定当前日:" + time3);log.info("指定当前时:" + time4);log.info("指定当前分:" + time5);log.info("指定当前秒:" + time6);}

3.3.获取当前日期的单个参数

/*** 获取当前日期的单个参数*/@Testpublic void demo15() {LocalDateTime now = LocalDateTime.now();int dayOfYear = now.getDayOfYear();int dayOfMonth = now.getDayOfMonth();int monthValue = now.getMonthValue();DayOfWeek dayOfWeek = now.getDayOfWeek();int hour = now.getHour();int minute = now.getMinute();int second = now.getSecond();log.info("获取当前日期在今年的第几天:" + dayOfYear);log.info("获取当前日期是本月的第几天:" + dayOfMonth);log.info("获取当前的月份:" + monthValue);log.info("获取当前的星期:" + dayOfWeek);log.info("获取当前的时:" + hour);log.info("获取当前的分:" + minute);log.info("获取当前的秒:" + second);}

** 3.4.当前日期加减**

/*** 当前日期加减*/@Testpublic void demo16() {LocalDateTime now = LocalDateTime.now();LocalDateTime time1 = now.minusYears(1);LocalDateTime time2 = now.minusMonths(12);LocalDateTime time3 = now.minusWeeks(1);LocalDateTime time4 = now.minusDays(21);LocalDateTime time5 = now.minusHours(21);LocalDateTime time6 = now.minusMinutes(21);LocalDateTime time7 = now.minusSeconds(21);LocalDateTime time8 = now.plusYears(1);LocalDateTime time9 = now.plusMonths(12);LocalDateTime time10 = now.plusWeeks(1);LocalDateTime time11 = now.plusDays(21);LocalDateTime time12 = now.plusHours(21);LocalDateTime time13 = now.plusMinutes(21);LocalDateTime time14 = now.plusSeconds(21);log.info("当前时间减一年:" + time1);log.info("当前时间减12个月:" + time2);log.info("当前时间减一星期:" + time3);log.info("当前时间减21天:" + time4);log.info("当前时间减21小时:" + time5);log.info("当前时间减21分钟:" + time6);log.info("当前时间减21秒:" + time7);log.info("当前时间加一年:" + time8);log.info("当前时间加12个月:" + time9);log.info("当前时间加一星期:" + time10);log.info("当前时间加21天:" + time11);log.info("当前时间加21小时:" + time12);log.info("当前时间加21分钟:" + time13);log.info("当前时间加21秒:" + time14);}

3.5.获取当前日期和指定日期

/*** 获取当前日期和指定日期*/@Testpublic void demo17() {LocalDateTime now = LocalDateTime.of(LocalDate.now(), LocalTime.now());LocalDateTime time1 = LocalDateTime.of(2010, Month.JULY, 12, 12, 12);log.info("获取当前日期:" + now);log.info("指定日期:" + time1);}

四.开发常用

4.1.转换

/*** 转化*/@Testpublic void demo18() {LocalDateTime now1 = LocalDateTime.now();LocalDate date1 = now1.toLocalDate();LocalTime time1 = now1.toLocalTime();LocalDate now2 = LocalDate.now();LocalDateTime date2 = now2.atStartOfDay();String format = now1.format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:ss:mm"));Long newSecond = LocalDateTime.now().toInstant(ZoneOffset.of("+8")).toEpochMilli();log.info("LocalDateTime转LocalDate:" + date1);log.info("LocalDateTime转LocalTime:" + time1);log.info("LocalDate转LocalDateTime:" + date2);log.info("LocalDateTime格式化:" + format);log.info("获取毫秒时间:" + newSecond);}

4.2.计算差值

 /*** 计算差值*/@Testpublic void demo19() {String date = "2019-01-01 01:12:12";LocalDateTime parseDate = LocalDateTime.parse(date, DateTimeFormatter.ofPattern("yyyy-MM-dd HH:ss:mm"));Duration betweenDate = Duration.between(parseDate, LocalDateTime.now());long days = betweenDate.toDays();long hours = betweenDate.toHours();long minutes = betweenDate.toMinutes();LocalDate parseDate1 = parseDate.toLocalDate();Period betweenDate1 = Period.between(parseDate1, LocalDate.now());int months = betweenDate1.getMonths();int days1 = betweenDate1.getDays();int months1 = betweenDate1.getMonths();int years = betweenDate1.getYears();log.info("天的差值:" + days);log.info("时差值:" + hours);log.info("分差值:" + minutes);log.info("比较月之间差值:" + months);log.info("比较天之间的差值:" + days1);log.info("月份榨汁:" + months1);log.info("年份差值:" + years);}

4.3.获取年、月、周的第一天和最后一天

 /*** 极限值*/@Testpublic void demo20() {LocalDateTime now = LocalDateTime.now();LocalDateTime monday = now.with(DayOfWeek.MONDAY);LocalDateTime sunday = now.with(DayOfWeek.SUNDAY);log.info("当前周的周一:" + monday);log.info("当前周的周日:" + sunday);LocalDateTime firstday = now.with(TemporalAdjusters.firstDayOfMonth());LocalDateTime lastDay = now.with(TemporalAdjusters.lastDayOfMonth());log.info("当前月的第一天:" + firstday);log.info("当前月的最后一天:" + lastDay);LocalDate start = LocalDate.now().with(TemporalAdjusters.firstDayOfYear());LocalDate end = LocalDate.now().with(TemporalAdjusters.lastDayOfYear());log.info("今年的第一天:" + start);log.info("今年的最后一天:" + end);LocalDate lastStart = LocalDate.now().plusYears(-1).with(TemporalAdjusters.firstDayOfYear());LocalDate lastEnd = LocalDate.now().plusYears(-1).with(TemporalAdjusters.lastDayOfYear());log.info("去年的第一天:" + lastStart);log.info("去年的最后一天:" + lastEnd);LocalDate nextStart1 = LocalDate.now().plusYears(1).with(TemporalAdjusters.firstDayOfYear());LocalDate nextStart2 = LocalDate.now().with(TemporalAdjusters.firstDayOfNextYear());LocalDate nextEnd1 = LocalDate.now().plusYears(1).with(TemporalAdjusters.lastDayOfYear());log.info("明年的第一天:" + nextStart1);log.info("明年的第一天:" + nextStart2);log.info("明年的最后一天:" + nextEnd1);}

4.4.获得当天的最大时间和最小时间

/*** 获取今天的最大时间和最小时间*/@Testpublic void demo21() {LocalDateTime now = LocalDateTime.now();// 获取当前星期的第一天和最后一天LocalDateTime startTime = LocalDateTime.of(LocalDate.now(), LocalTime.MAX);LocalDateTime endTime = LocalDateTime.of(LocalDate.now(), LocalTime.MIN);log.info("当天最小时间:" + startTime);log.info("当天最大时间:" + endTime);}

LocalDate、LocalTime和LocalDateTime用法相关推荐

  1. 关于LocalDate、LocalTime、LocalDateTime

    0.快速上手 看源码: https://www.matools.com/api/java8 在java.time中 //获取当前时间 LocalDateTime localDateTime = Loc ...

  2. Java 8 Time Api 使用(LocalDate,LocalTime和LocalDateTime等)

    目录 1.概述 2. 旧的时间API(java8之前)的问题 3. 使用LocalDate,LocalTime和LocalDateTime 3.1.使用LocalDate 3.2.使用LocalTim ...

  3. JDK8新特性LocalDate、LocalTime和LocalDateTime

    LocalDate.LocalTime和LocalDateTime这三个类是JDK1.8出来的新特性,用于时间和日期的支持,这三个类位于java.time包下面. LocalDate: LocalDa ...

  4. Java中 LocalDate、LocalTime、LocalDateTime三个时间工具类的使用介绍

    Java中 LocalDate.LocalTime.LocalDateTime三个时间工具类的使用介绍 一.背景: 之前在做项目的过程中,对日期时间类没有一个系统的了解,总是在用的时候去搜索一下,解决 ...

  5. JDK8 Instant类的使用和LocalDate,LocalTime 和 LocalDateTime的介绍。

    简介 在Java 8中又为我们提供了新的日期类.它可以帮我们更精确的保存记录时间. 本文章主要介绍的就是Instant,LocalDate,LocalTime 和 LocalDateTime 这几个类 ...

  6. 9 mybatis中使用Java8的日期LocalDate、LocalTime、LocalDateTime

    注意: 1.大家知道,在实体Entity里面,可以使用java.sql.Date.java.sql.Timestamp.java.util.Date来映射到数据库的date.timestamp.dat ...

  7. LocalDate、LocalTime、LocalDateTime介绍

    一.Date与LocalDate.LocalTime.LocalDateTime互转 1.Date转LocalDate.LocalTime.LocalDateTime Date date = new ...

  8. Java关于LocalDate、LocalTime、LocalDateTime类的详细讲解

    Java关于日期和时间相关API必须明白的方法和类(JDK8之后部分) 文章目录 Java关于日期和时间相关API必须明白的方法和类(JDK8之后部分) 新日期时间API出现的背景 新时间日期API ...

  9. LocalDate、LocalTime、LocalDateTime使用与区别

    前言 LocalDate.LocalTime.LocalDateTime这三个类是java8新提供的时间操作类 LocalDate: 主管yyyy-MM-dd这种形式,也就是只管:年-月-日 Loca ...

最新文章

  1. yii2 后台权限验证获取用户身份_Yii2搭建后台并实现rbac权限控制完整实例教程...
  2. HashMap+双向链表实现LRU
  3. iOS中MVC等设计模式详解
  4. django 1.8 官方文档翻译: 1-1-1 Django初探
  5. 对策略模式与状态模式的一点思考
  6. 13.TCP/IP 详解卷1 --- IGMP : Internet 管理组协议
  7. 第四周项目1-三角形类的构造函数
  8. JDK8 官方下载地址
  9. GD32 USB调试、DFU过程问题
  10. 腾讯与360继续争,受益的是谁?
  11. 设随机过程{X(t)=Acos(ωt+Θ),t∈(一∞,+∞)},其中A,ω,Θ为相互独立的实随机变量,其中A的均值为2,方差为4,且Θ~U(-π,π),ω~U(-5,5),试问X(t)是否为平稳过程
  12. android百度输入法切换,百度输入法输入模式怎么切换 快速一键切换输入法模式方法教程...
  13. java中以yyyyMMddHHmmss格式取得系统时间
  14. 让局域网网速极速狂飙(组图)
  15. 一个基于OpenDDS的股票报价Stock Quote和交易exchange 的完整用例介绍
  16. nyoj 海岛争霸(Floyd最短路径)
  17. 在汽车控制器应用最广最多的芯片之一-英飞凌-AURIX架构
  18. Python 数据可视化基础教程
  19. 对称加密 非对称加密
  20. 提取 汉字 拼音 首字母

热门文章

  1. 应用激光透窗摄像机,助力机动车超员检测系统抓拍违章超员驾驶
  2. Greenplum(一) 基本特性 Master Segment
  3. Pytorch学习(五)ReLu激活函数
  4. 2022第十一届中国创新创业大赛全国总决赛在深圳举办
  5. Android四大组件之一Activity的生命周期
  6. 【BZOJ 35164126】国王奇遇记
  7. 实验一 添加最简单的Linux内核模块kello
  8. win10家庭版升级专业版操作步骤
  9. 自动填写问卷星并提交
  10. 《大数据建模、分析、挖掘技术》