Maison >Java >javaDidacticiel >Quelle est la différence entre « kk:mm », « HH:mm » et « hh:mm » dans SimpleDateFormat ?

Quelle est la différence entre « kk:mm », « HH:mm » et « hh:mm » dans SimpleDateFormat ?

Barbara Streisand
Barbara Streisandoriginal
2024-11-19 04:35:02541parcourir

What is the difference between

Spécificateurs de format d'heure dans SimpleDateFormat

Lors de l'utilisation de SimpleDateFormat pour formater les valeurs d'heure, il est crucial de comprendre les différences entre les spécificateurs de format d'heure kk : mm, HH:mm et hh:mm.

kk:mm

Le spécificateur kk représente les heures sur une échelle de 24 heures, allant de 01 à 24. Par exemple, 24:00:00 indique minuit.

HH:mm

Contrairement à kk, HH spécifie les heures sur une échelle de 24 heures de 00 à 23h00. :00:00 indique minuit.

hh:mm

Le spécificateur hh affiche les heures sur une échelle de 12 heures, en utilisant 01 à 12 en conjonction avec AM/PM . Par conséquent, 00 :00 :00 ou 12 :00 :00 PM représenterait midi.

Considérez le code Java suivant :

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

Ce code imprime le résultat suivant :

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

La différence dans la sortie de working2 est due au fait que le code définit le fuseau horaire de working2 mais pas son format. En conséquence, il affiche à tort 05:30:00 AM ou PM, alors qu'il devrait afficher 00:00:00 AM.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn