SimpleDateFormat 中的小时格式说明符
使用 SimpleDateFormat 格式化时间值时,了解小时格式说明符 kk 之间的差异至关重要:毫米、高度:毫米,以及hh:mm。
kk:mm
kk 说明符表示 24 小时制的小时,范围从 01 到 24。例如,24:00: 00表示午夜。
HH:mm
与 kk 不同,HH 指定从 00 到 23 的 24 小时制时间。 00:00:00 表示
hh:mm
hh 说明符以 12 小时制显示小时,将 01 到 12 与 AM/PM 结合使用。因此,12:00:00 AM 或 12:00:00 PM 代表中午。
考虑以下 Java 代码:
SimpleDateFormat broken = new SimpleDateFormat("kk:mm:ss"); broken.setTimeZone(TimeZone.getTimeZone("Etc/UTC")); SimpleDateFormat working = new SimpleDateFormat("HH:mm:ss"); working.setTimeZone(TimeZone.getTimeZone("Etc/UTC")); SimpleDateFormat working2 = new SimpleDateFormat("hh:mm:ss"); working.setTimeZone(TimeZone.getTimeZone("Etc/UTC")); System.out.println(broken.format(epoch)); System.out.println(working.format(epoch)); System.out.println(working2.format(epoch));
此代码打印以下输出:
24:00:00 00:00:00 05:30:00
working2 输出的差异是因为代码设置了working2 的时区而不是其时区 格式。结果,它错误地显示了 05:30:00 AM 或 PM,而它应该输出 12:00:00 AM。
以上是SimpleDateFormat 中的'kk:mm”、'HH:mm”和'hh:mm”有什么区别?的详细内容。更多信息请关注PHP中文网其他相关文章!