网站首页 > 技术文章 正文
各位小伙伴们,我们又见面了,今天峰哥跟大家分享一下java8的全新日期时间处理API。在Java8之前,我们使用的日期时间是:
java.util.Datejava.util.Calendar
java.util.GregorianCalendar
日期时间与字符串之间的转换用java.text.SimpleDateFormat,这些处理日期的类有一个共同令人头疼的问题,就是这些对象都是变量,对象的数据属性可以被改变,而且还线程不安全。
如果想要线程安全,需要synchronized来辅助,这样复杂度和代码量就比较大了,而且修修补补的代码味道很差,现在好了,随着JDK8的发布,Java也提出全新的日期时间API,下面大家跟着峰哥一起探探究竟。
在jdk8中,日期的处理类都在java.time包下,常用的有:
LocalDate,LocalTime,LocalDateTime,Instant,ZonedDateTime等。下面就实战中就常用的功能进行案例测试.代码如下:
案例1
获取当前的系统时间
案例2
获取当前系统时间的年月日的属性信息
案例3
依据年月日参数,自定义一个日期
到这里,看明白没有,新的体系已经与以前不一样了,没有之前的年需要1970年起始计算,也没有了月份的从0开始计数,现在该是多少就还是多少,是不是很兴奋!
案例4
判断两个日期是否相等
新增的Api中,新出现了YearMonth和MonthDay两个类,可以判断年月和月日两个属性的值,这样就很方便对于特殊信息的比较,如银行卡的过期时间(yyyy/mm),结婚纪念日(mm/dd)。
案例5
不同日期的年月比较
案例6
两个年费的月日比较
日期研究结束,研究时间相关api。
案例7
获取当前时间
案例8
2小时后的时间怎么获得
案例9
在日期上也可以进行加减
下面的案例解决是两个日期之间的比较计算问题。
案例10
判断两个日期哪个在前,哪个在后
案例11
计算两个日期之间相差的月份或者年份
日期和字符串之间的转换是我们常见问题,必须有案例。
案例12
日期和字符串之间的转换
好了,有关jdk8的日期处理还有很多很多,比如时区等操作,由于篇幅有限,这次就分享到这里了,小伙伴们,有时间峰哥下次继续跟大家分享。
猜你喜欢
- 2024-10-22 DATE #4、Java操作日期时间-②老版本使用的日期和时间类
- 2024-10-22 JDK1.7和JDK1.8中日期时间使用和处理的不同「Java工程师必读」
- 2024-10-22 玩转MySQL的时间类型:Date、DateTime、TimeStamp、Time
- 2024-10-22 Java8日期时间类使用详解,干货满满,不容错过哦
- 2024-10-22 java 8 新特性 日期和时间 API(我的世界java版特性)
- 2024-10-22 JAVA时间工具包 - java.time(java中时间)
- 2024-10-22 Java 打印日期/时间格式(java 打印当前时间)
- 2024-10-22 Java时间类Date与Calendar的区别与使用
- 2024-10-22 用python 计算两个日期相差多少个月
- 2024-10-22 两天两夜,1M图片优化到100kb(怎么把2兆的照片调成100k)
- 11-27echarts图形报表的入门案例
- 11-27Echarts仿电梯运行图
- 11-27微信小程序开发之wepy 引入echarts统计图方法 亲测可用
- 11-27yarn安装echarts教程
- 11-27微信小程序使用 ECharts
- 11-274、echarts 如何画图?(必会)
- 11-27JavaScript 前端数据可视化——ECharts.js
- 11-27vue+echarts使用
- 最近发表
- 标签列表
-
- cmd/c (57)
- c++中::是什么意思 (57)
- sqlset (59)
- ps可以打开pdf格式吗 (58)
- phprequire_once (61)
- localstorage.removeitem (74)
- routermode (59)
- vector线程安全吗 (70)
- & (66)
- java (73)
- org.redisson (64)
- log.warn (60)
- cannotinstantiatethetype (62)
- js数组插入 (83)
- resttemplateokhttp (59)
- gormwherein (64)
- linux删除一个文件夹 (65)
- mac安装java (72)
- reader.onload (61)
- outofmemoryerror是什么意思 (64)
- flask文件上传 (63)
- eacces (67)
- 查看mysql是否启动 (70)
- java是值传递还是引用传递 (58)
- 无效的列索引 (74)