LocalDate的使用及解析
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了LocalDate的使用及解析相关的知识,希望对你有一定的参考价值。
参考技术A 最近刚做了一个用户签到获取奖励的需求,因为是Trip端即海外端,所以会需要考虑到时区的问题,又用到了平时配置中会经常使用到的关于生效时间问题的LocalDate和LocalDateTime类,刚好最近就好好整理一下。按照惯例,我们还是从学源码开始,然后写写例子实践一下,最后总结。上面通过源码的方式列举出了我们常用的一些方法并加上了注释,最常用的方法是now,parse,isAfter,isBefore等方法,因为项目中配置生效时间和截止时间一般是字符串,可以通过parse方法获取LocalDate对象,然后now方法获取当前时间,最后通过isAfter,isBefore进行判断是否在生效时间内。当然LocalDate是精确到天数的,而我们实际使用一般是精确到时分秒,所以使用的是LocalDateTime,但是其实这两个内容很相似,所以就只介绍这一个了,下面写了一些使用案例帮助大家理解。
运行结果如下
之前JDK已经有了Date,SimpleDateFormat,Calendar等用于时间操作的类了,为啥还会新开发呢,其实就是Calendar,SimpleDateFormat是会有并发风险的,但是LocalDate,LocalDateTime都是并发安全的类,实际当中使用起来也更加的方便快捷。
上面所说的SimpleDateFormat线程不安全的原因是什么,为啥DateTimeFormatter又是线程安全的?因为SimpleDateFormat有个继承自父类的全局变量calendar但是DateTimeFormatter只有final类型的全局变量,这个可以大家自己去学习一下。
以上是关于LocalDate的使用及解析的主要内容,如果未能解决你的问题,请参考以下文章
最全的时间类解析。 SimpleDateFormat + Date() 和 DateTimeFormatter + LocalDate()的区别与使用场景
最全的时间类解析。 SimpleDateFormat + Date() 和 DateTimeFormatter + LocalDate()的区别与使用场景