Подтвердить что ты не робот

Преобразование TimeUnit в ChronoUnit?

В Java 8 представлен ChronoUnit, что в значительной степени эквивалентно TimeUnit, представленному на Java 5.

Существует ли существующая функция для преобразования TimeUnit в ChronoUnit? (Да, я знаю, как писать свои собственные)

4b9b3361

Ответ 1

На одном этапе разработки вы могли бы построить Duration из TimeUnit. https://github.com/ThreeTen/threeten/blob/3b4c40e3e7a5dd7a4993ee19e1c156e4e65432b3/src/main/java/javax/time/Duration.java#L293 Однако это было удалено для окончательной версии кода в Java SE 8.

Я не знаю какой-либо предварительно упакованной процедуры для преобразования, но ее следует добавить в ThreeTen-Extra, возможно, в Temporals.

UPDATE: это было исправлено https://github.com/ThreeTen/threeten-extra/issues/22

Ответ 2

Java 9

В Java 9 API TimeUnit расширился и позволяет конвертировать между TimeUnit и ChronoUnit:

TimeUnit.toChronoUnit() // returns a ChronoUnit
TimeUnit.of(ChronoUnit chronoUnit) // returns a TimeUnit

см. JDK-8141452