Home >Java >javaTutorial >What's the Difference Between 'kk:mm', 'HH:mm', and 'hh:mm' in SimpleDateFormat for Time Representation?

What's the Difference Between 'kk:mm', 'HH:mm', and 'hh:mm' in SimpleDateFormat for Time Representation?

Mary-Kate Olsen
Mary-Kate OlsenOriginal
2024-11-15 04:54:02426browse

What's the Difference Between

Understanding the Differences in SimpleDateFormat Hour Formats: kk:mm, HH:mm, and hh:mm

Various formats exist in SimpleDateFormat to represent time, including kk:mm, HH:mm, and hh:mm. Each format serves a specific purpose.

kk:mm (01-24 hour format):

This format represents time using a 01 to 24-hour clock, with 01 indicating 1:00 AM and 24 indicating midnight. This format is commonly used in military notation and in some European countries.

HH:mm (00-23 hour format):

This format uses a 00 to 23-hour clock, with 00 indicating midnight and 23 indicating 11:00 PM. It's the standard 24-hour format used in most parts of the world.

hh:mm (12-hour format with AM/PM):

This format follows a 12-hour clock, with hh representing hours (01 to 12) and mm representing minutes. AM or PM is used to indicate whether the time is before or after noon.

Example:

The following Java code snippet demonstrates the differences between these formats:

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"));

Date epoch = new Date(0); // Represents 1970-01-01 00:00:00 UTC

System.out.println(broken.format(epoch));
System.out.println(working.format(epoch));
System.out.println(working2.format(epoch));

Output:

24:00:00
00:00:00
05:30:00

As you can see, "kk:mm" prints the time in military format, "HH:mm" prints in standard 24-hour format, and "hh:mm" prints in 12-hour format with AM/PM notation.

The above is the detailed content of What's the Difference Between 'kk:mm', 'HH:mm', and 'hh:mm' in SimpleDateFormat for Time Representation?. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn