Мне просто интересно, почему некоторые перечисления отсутствуют в классе TimeUnit Java?
Фактически максимальное время - ДЕНЬ, в то время как я хотел бы использовать такие вещи, как НЕДЕЛЯ, ГОД...
Ответ 1
Константа TimeUnit.DAYS представляет интервал в 24 часа, а не календарный день (с полуночи до полуночи). Все, что находится за пределами дня (неделя, месяц, год), - это блок календаря, а не единица времени. Продолжительность календарных единиц зависит от используемого календаря: например, неделя может быть длиннее или короче на час в недели, когда переход на летнее время идет и выходит из строя, високосные годы длиннее на один день и т.д. Вот почему включение календарных единиц в перечисление TimeUnit не имеет смысла.