Une question simple, mais je ne l'ai pas trouvée:
La plage de HOUR_OF_DAY est-elle comprise entre 0 et 23 ou 1 et 24?
Je veux un HOUR_OF_DAY aléatoire, ai-je besoin de:
int randomHour = (int) (Math.random()*24);
ou
int randomHour = (int) (Math.random()*24+1);
De la documentation :
Numéro de champ pour get et set indiquant l'heure de la journée.
HOUR_OF_DAY
est utilisé pour l'horloge de 24 heures. Par exemple, à 10: 04: 15.250 PM leHOUR_OF_DAY
a 22 ans.
Si 10: 04: 15.250 PM est HOUR_OF_DAY
22, Cela ferait la gamme 0
- 23
. Si c'était 1
à 24
, 22 heures serait 23. Et ce serait faux à tant de niveaux. :-)
C'est 0-23.
Je l'ai testé en exécutant le code ci-dessous
Calendar calendar = Calendar.getInstance();
calendar.set(Calendar.HOUR_OF_DAY, 24);
System.out.println(calendar.get(Calendar.HOUR_OF_DAY));
La sortie est 0.
Si vous courez
calendar.set(Calendar.HOUR_OF_DAY, 23);
La sortie sera 23.
Si vous courez
calendar.set(Calendar.HOUR_OF_DAY, 25);
La sortie sera 1.
La plage est comprise entre 0 et 23
Lance ça
Calendar calendar = Calendar.getInstance();
calendar.set(Calendar.HOUR_OF_DAY);
System.out.println(calendar.get(Calendar.HOUR_OF_DAY));
Si l'heure est 12 h, la sortie sera 0
et si le temps est 11 PM la sortie sera 23