请看下图:如果时间格式字符串中的小时使用小写的“h”,则对12点进行转换时,会将12点转换为00;如果将小写“hh”换成大写的“HH”则不会有此问题;
日期时间
- 日期格式化时,传入 pattern 中表示年份统一使用小写的y。
说明:日期格式化时,yyyy 表示当天所在的年,而大写的 YYYY 代表是 week in which year(JDK7 之后 引入的概念),意思是当天所在的周属于的年份,一周从周日开始,周六结束,只要本周跨年,返回的 YYYY 就是下一年。
正例:表示日期和时间的格式如下所示:
new SimpleDateFormat("yyyy-MM-dd HH:mm:ss")
- 在日期格式中分清楚大写的M和小写的m,大写的H和小写的h分别指代的意义说明: 日期格式中的这两对字母表意如下:
1) 表示月份是大写的 M;
2) 表示分钟则是小写的 m;
3) 24 小时制的是大写的 H;
4) 12 小时制的则是小写的 h