先上一张图,看看自己翻车没?赶紧自查起来,哈哈~

 

前几天你因为 YYYY-MM-dd 翻车了吗?_java前几天你因为 YYYY-MM-dd 翻车了吗?_linux_02

看完了来看看下面这段代码解释:

 1/**
 2说明:日期格式化时, yyyy 表示当天所在的年,而大写的 YYYY 代表是 week in which year,意思是当天所在的周属于的年份,一周从周日开始,周六结束,只要本周跨年,返回的 YYYY 就是下一年。
 3另外需要注意:
 4表示月份是大写的 M
 5表示分钟则是小写的 m
 624 小时制的是大写的 H
 712 小时制的则是小写的 h
 8*/
 9DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
10String timeStr = "2019-01-01 00:00:00";
11LocalDateTime dateTime = LocalDateTime.parse(timeStr, formatter);

 

也就是说:年份如果用 Y 会是这周的年份,y 才是标准的年份。这一点官方文档没说明,所以还是自己注意点吧,以后转换日期格式的时候记得还是用 “yyyy-MM-dd” 这种格式吧,避免出现这种情况衍生的 bug。

 

 

 

-END-

 

 

另外,新关注我们公众号的朋友,可以在公众号后台聊天框回复【1024】,可以免费获取2T的编程视频,算法、人工智能、Python、Java、Linux、Go、C语言、软考、英语等等资源 。

 



 前几天你因为 YYYY-MM-dd 翻车了吗?_日期格式化_03前几天你因为 YYYY-MM-dd 翻车了吗?_公众号_04