Класс ThaiBuddhistDate

Класс ThaiBuddhistDate представляет дату в тайском буддийском календаре, который используется в Таиланде и некоторых других странах Юго-Восточной Азии. Этот календарь основан на буддийской эре и опережает григорианский календарь на 543 года. Класс предоставляет методы для создания, преобразования и манипуляции датами в данной системе летоисчисления.

Импорт

kotlinimport java.time.chrono.ThaiBuddhistDate

Синтаксис

kotlinfun now(): ThaiBuddhistDate
kotlinfun now(zone: ZoneId): ThaiBuddhistDate
kotlinfun now(clock: Clock): ThaiBuddhistDate
kotlinfun of(prolepticYear: Int, month: Int, dayOfMonth: Int): ThaiBuddhistDate
kotlinfun from(temporal: TemporalAccessor): ThaiBuddhistDate

Пример

Создадим текущую дату по тайскому буддийскому календарю:

kotlinval thaiDate = ThaiBuddhistDate.now()
println(thaiDate)

Результат выполнения кода:

kotlinString "ThaiBuddhist BE 2567-01-23"

Пример

Создадим конкретную дату по тайскому буддийскому календарю:

kotlinval thaiDate = ThaiBuddhistDate.of(2567, 1, 23)
println(thaiDate)

Результат выполнения кода:

kotlinString "ThaiBuddhist BE 2567-01-23"

Пример

Преобразуем григорианскую дату в тайскую буддийскую:

kotlinimport java.time.LocalDate

val localDate = LocalDate.of(2025, 12, 31)
val thaiDate = ThaiBuddhistDate.from(localDate)
println(thaiDate)

Результат выполнения кода:

kotlinString "ThaiBuddhist BE 2568-12-31"

Пример

Получим компоненты тайской буддийской даты:

kotlinval thaiDate = ThaiBuddhistDate.of(2568, 7, 15)

val year = thaiDate.year
val month = thaiDate.monthValue
val day = thaiDate.dayOfMonth

println("Year: $year, Month: $month, Day: $day")

Результат выполнения кода:

kotlinString "Year: 2568, Month: 7, Day: 15"

Пример

Сравним разницу в годах между григорианским и тайским буддийским календарем:

kotlinval localDate = LocalDate.now()
val thaiDate = ThaiBuddhistDate.from(localDate)

val gregorianYear = localDate.year
val thaiYear = thaiDate.year
val difference = thaiYear - gregorianYear

println("Difference: $difference years")

Результат выполнения кода:

kotlinString "Difference: 543 years"

Смотрите также

  • класс LocalDate,
    который представляет дату в григорианском календаре
  • класс JapaneseDate,
    который представляет дату в японском календаре
  • класс HijrahDate,
    который представляет дату в исламском календаре
  • класс MinguoDate,
    который представляет дату в календаре Миньго