Каков диапазон HOUR_OF_DAY?
Простой вопрос, но я не смог его найти:
Является ли диапазон HOUR_OF_DAY между 0 и 23, или 1 и 24?
Я хочу случайный HOUR_OF_DAY, мне нужно:
int randomHour = (int) (Math.random()*24);
или
int randomHour = (int) (Math.random()*24+1);
Ответы
Ответ 1
Из документации:
Номер поля для get и set, указывающий час дня. HOUR_OF_DAY
используется для 24-часовых часов. Например, в течение 10: 04: 15 ч. 250 м. HOUR_OF_DAY
равно 22.
Если 10: 04: 15.250 PM HOUR_OF_DAY
22, это сделает диапазон 0
- 23
. Если это было 1
до 24
, 10 часов. будет 23. И это было бы неправильно на стольких уровнях.: -)
Ответ 2
Это 0-23.
Я протестировал его, выполнив ниже код
Calendar calendar = Calendar.getInstance();
calendar.set(Calendar.HOUR_OF_DAY, 24);
System.out.println(calendar.get(Calendar.HOUR_OF_DAY));
Выход равен 0.
Если вы запустите
calendar.set(Calendar.HOUR_OF_DAY, 23);
Выход будет равен 23.
Если вы запустите
calendar.set(Calendar.HOUR_OF_DAY, 25);
Выход будет равен 1.
Ответ 3
Диапазон находится между 0 и 23
Запустите этот
Calendar calendar = Calendar.getInstance();
calendar.set(Calendar.HOUR_OF_DAY);
System.out.println(calendar.get(Calendar.HOUR_OF_DAY));
Если время 12 AM, выход будет 0
и если время составляет 11 вечера, выход будет равен 23