我正面临着“yyyy-MM-dd hh:mm:ss”日期解析模式的奇怪行为。下面是我的代码。
public static void main(String[] args) throws Exception {
System.out.println(parseDate("2018-08-16 11:00:00"));
System.out.println(parseDate("2018-08-16 12:00:00"));
System.out.println(parseDate("2018-08-16 13:00:00"));
}
public static Date parseDate(String date) throws Exception {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
return sdf.parse(date);
}
我得到以下输出
UTC 2018 年 8 月 16 日星期四 11:00:00
UTC 2018 年 8 月 16 日星期四 00:00:00
UTC 2018 年 8 月 16 日星期四 13:00:00
我不明白为什么“2018-08-16 12:00:00”的第二个输出是说 Thu Aug 16 00:00:00 UTC 2018 而不是 Thu Aug 16 12:00:00 UTC 2018。
从这里查看日期解析模式的文档。它说
h -> 上午/下午的小时 (1-12)
有人可以解释一下吗?感谢期待。
相关分类