java.time.Month
Используя классы java.time, в частности, перечисление java.time.Month
.
int days = Month.FEBRUARY.minLength(); // 28
int days = Month.FEBRUARY.maxLength(); // 29
int days = Month.FEBRUARY.length( boolean_consider_leap_year ); // TRUE → 29, FALSE → 28.
Вы можете получить объект Month
для номера месяца, 1-12 означает январь-декабрь.
int monthNumber = Month.FEBRUARY.getValue();
О java.time
Инфраструктура java.time встроена в Java 8 и более поздние версии. Эти классы вытесняют неприятные старые классы даты и времени, такие как java.util.Date
, .Calendar
и & java.text.SimpleDateFormat
.
Проект Joda-Time , который теперь находится в режиме обслуживания , рекомендует перейти на java.time.
Чтобы узнать больше, см. Oracle Tutorial . И поиск переполнения стека для многих примеров и объяснений.
Большая часть функциональности java.time перенесена в Java 6 & 7 в ThreeTen-Backport и дополнительно адаптирована для Android в ThreeTenABP (см. Как пользоваться… ).
Проект ThreeTen-Extra расширяет java.time дополнительными классами. Этот проект является полигоном для возможных будущих дополнений к java.time. Здесь вы можете найти некоторые полезные классы, такие как Interval
, YearWeek
, YearQuarter
и другие.