先上一张图,看看自己翻车没?赶紧自查起来,哈哈~
看完了来看看下面这段代码解释:
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语言、软考、英语等等资源 。