电脑@如何处理计算机中的日期和时间问题?( 六 )
本文插图
4.3. DateTimeFormatter 上文已经说到 , DateTimeFormatter 是用来代替 SimpleDateFormat 的 。 与 SimpleDateFormat 相比 , DateTimeFormatter 的一个明显优势在于它是 线程安全 的 。 SimpleDateFormat 由于不是线程安全的 , 使用时只能在方法内部创建新的局部变量 , 而 DateTimeFormatter 可以只创建一个实例 。
DataTimeFormat 预定义的字符串和 SimpleDateFormat 一模一样 , 来看下 DateTimeFormatter 的基本使用:
本文插图
还记得 LocalDateTime 的 parse() 方法吗?我们查看一下它的源码:
本文插图
从源码中我们看到 , parse() 方法可以传入两个参数 , 第二个参数就是一个 DateTimeFormatter , 也就是说不仅 ISO 8601 标准格式的字符串可以被解析 , 我们完全可以自定义被解析的字符串格式 。
本文插图
DataTimeFormatter 的 ofPattern() 方法还可以传入一个 Locale 参数 , 这个参数的作用是使用当地的习惯来格式化时间:
本文插图
4.4. Instant 在新 API 中 , 使用 Instant 表示时间戳 , 它类似于 System.currentTimeMillis() 。 Instant 使用如下:
本文插图
给 Instant 加上一个时区 , 就可以创建出 ZonedDateTime:
本文插图
五、新旧 API 的转换 旧 API 转新 API 可以通过 toInstant() 方法转换为 Instant , 再由 Instant 转换成 ZonedDateTime:
本文插图
新 API 转旧 API 时 , 需要借助 long 类型时间戳实现:
本文插图
以上 , 就是 Java 日期和时间的全部内容了 , 有任何收获或疑问欢迎在评论区与大家一起讨论交流 。
本文作者:Alpinist Wang
声明:本文归 “力扣” 版权所有 , 如需转载请联系 。 文章封面图和文中部分图片来源于网络 , 如有侵权联系删除 。
推荐阅读
- 人民网@【战“疫”说理】疫情防控中如何有效实现经济复苏?
- 太平洋电脑网:不止于高功率+金牌,爱国者ES650还能保5年,爱了爱了
- [笔记本电脑]乙辰科技正式发布首款WiFi6新品:北斗II号分布式无线路由器
- 2020@2020 iPhone SE终于来了?A13处理器+三种配色
- 高通865处理器PK麒麟990处理器 集成5G才是王道
- 找果网■就是牛!10.2英寸IPAD在第四季度撑起全球平板电脑市场
- 『车家号』高低功率如何选?后期改装就能“低变高”了吗?,同一款发动机
- #浦江头条#“大龄书僮”们还好吗?,网课一月间孩子手机平板电脑敞开用
- 手机、眼镜如何消毒?清洁要从细节做起
- 『音频』iOS如何导入百度云的音频(易剪和易剪多轨版)
