Stundenformatspezifizierer in SimpleDateFormat
Beim Einsatz von SimpleDateFormat zum Formatieren von Zeitwerten ist es wichtig, die Unterschiede zwischen den Stundenformatspezifizierern zu verstehen kk: mm, HH:mm und hh:mm.
kk:mm
Der kk-Bezeichner stellt Stunden auf einer 24-Stunden-Skala dar, die von 01 bis 24 reicht. Beispielsweise gibt 24:00:00 Mitternacht an.
HH:mm
Im Gegensatz zu kk gibt HH Stunden auf einer 24-Stunden-Skala von 00 bis 23.00 an :00:00 bezeichnet Mitternacht.
hh:mm
Der hh-Bezeichner zeigt Stunden auf einer 12-Stunden-Skala an, wobei 01 bis 12 in Verbindung mit AM/PM verwendet wird . Daher würde 00:00:00 Uhr oder 12:00:00 Uhr Mittag darstellen.
Betrachten Sie den folgenden Java-Code:
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));
Dieser Code gibt die folgende Ausgabe aus:
24:00:00 00:00:00 05:30:00
Die Diskrepanz in der Ausgabe von „working2“ ist darauf zurückzuführen, dass der Code die Zeitzone von „working2“, nicht aber dessen Format festlegt. Infolgedessen wird fälschlicherweise 05:30:00 AM oder PM angezeigt, obwohl 12:00:00 AM ausgegeben werden sollte.
Das obige ist der detaillierte Inhalt vonWas ist der Unterschied zwischen „kk:mm', „HH:mm' und „hh:mm' in SimpleDateFormat?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!