Константа PROLEPTIC_MONTH
Константа PROLEPTIC_MONTH класса ChronoField представляет пролептический месяц, который является абсолютным счетом месяцев от начальной точки 1970-01.
Это поле представляет собой комбинацию года и месяца, где каждый месяц считается последовательно без учета правил календаря.
Значение вычисляется как (год * 12 + месяц - 1).
Импорт
import java.time.temporal.ChronoField
Синтаксис
ChronoField.PROLEPTIC_MONTH
Пример
Получим значение пролептического месяца для даты "2025-07-15":
import java.time.LocalDate
import java.time.temporal.ChronoField
val date = LocalDate.of(2025, 7, 15)
val prolepticMonth = date.getLong(ChronoField.PROLEPTIC_MONTH)
println("Proleptic month: $prolepticMonth")
Результат выполнения кода:
String "Proleptic month: 666"
Пример
Вычислим разницу в пролептических месяцах между двумя датами:
import java.time.LocalDate
import java.time.temporal.ChronoField
val date1 = LocalDate.of(2025, 12, 31)
val date2 = LocalDate.of(2024, 1, 1)
val months1 = date1.getLong(ChronoField.PROLEPTIC_MONTH)
val months2 = date2.getLong(ChronoField.PROLEPTIC_MONTH)
val diff = months1 - months2
println("Difference in proleptic months: $diff")
Результат выполнения кода:
String "Difference in proleptic months: 23"
Пример
Проверим валидность значения пролептического месяца:
import java.time.temporal.ChronoField
val isValid = ChronoField.PROLEPTIC_MONTH.isSupportedBy()
println("Is supported: $isValid")
Результат выполнения кода:
String "Is supported: true"
Смотрите также
-
константу
YEARклассаChronoField,
которая представляет год -
константу
MONTH_OF_YEARклассаChronoField,
которая представляет месяц года -
класс
ChronoUnit,
который представляет единицы измерения времени