Класс ThaiBuddhistDate
- Все реализованные интерфейсы:
-
Serializable,Comparable<ChronoLocalDate>,ChronoLocalDate,Temporal,TemporalAccessor,TemporalAdjuster
public final class ThaiBuddhistDate extends Object implements ChronoLocalDate, Serializable
Эта дата работает с использованием календаря тайского буддизма. Эта система календаря используется в основном в Таиланде. Даты выровнены таким образом, что 2484-01-01 (Buddhist) является 1941-01-01 (ISO).
Это класс значение-основанный; программисты должны рассматривать экземпляры, которые равны, как взаимозаменяемые и не должны использовать экземпляры для синхронизации, иначе могут возникнуть непредсказуемые последствия. Например, в будущей версии синхронизация может завершиться ошибкой. Для сравнений следует использовать метод equals.
- Требования к реализации:
- Этот класс неизменяемый и потокобезопасный.
- С:
- 1.8
- См. также:
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
final ChronoLocalDateTime |
atTime |
Объединяет эту дату с временем, чтобы создать ChronoLocalDateTime. |
boolean |
equals |
Сравнивает эту дату с другой датой, включая хронологию. |
static ThaiBuddhistDate |
from |
Получает ThaiBuddhistDate из временного объекта. |
ThaiBuddhistChronology |
getChronology() |
Получает хронологию этой даты, которая представляет собой систему календаря тайского буддизма. |
ThaiBuddhistEra |
getEra() |
Получает эру, применимую в эту дату. |
long |
getLong |
Получает значение указанного поля как long. |
int |
hashCode() |
Хеш-код для этой даты. |
int |
lengthOfMonth() |
Возвращает длительность месяца, представленного этой датой. |
ThaiBuddhistDate |
minus |
Возвращает объект того же типа, что и этот объект, с вычтенным указанным периодом. |
ThaiBuddhistDate |
minus |
Возвращает объект того же типа, что и этот объект, с вычтенным значением. |
static ThaiBuddhistDate |
now() |
Получает текущую ThaiBuddhistDate из системных часов в часовом поясе по умолчанию. |
static ThaiBuddhistDate |
now |
Получает текущую ThaiBuddhistDate из указанных часов. |
static ThaiBuddhistDate |
now |
Получает текущую ThaiBuddhistDate из системных часов в указанном часовом поясе. |
static ThaiBuddhistDate |
of |
Получает ThaiBuddhistDate, представляющий дату в системе календаря тайского буддизма, из полей пролептического года, месяца и дня. |
ThaiBuddhistDate |
plus |
Возвращает объект того же типа, что и этот объект, с добавленным указанным периодом. |
ThaiBuddhistDate |
plus |
Возвращает объект того же типа, что и этот объект, с добавленным значением. |
String |
toString() |
Выводит эту дату как String. |
ChronoPeriod |
until |
Вычисляет период между этой датой и другой датой как ChronoPeriod. |
long |
until |
Вычисляет количество времени до другой даты в терминах указанного единицы измерения. |
ThaiBuddhistDate |
with |
Возвращает измененный объект того же типа, что и этот объект, с произведенным изменением. |
ThaiBuddhistDate |
with |
Возвращает объект того же типа, что и этот объект, с измененным указанным полем. |
Методы, объявленные в классе java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
Методы, объявленные в интерфейсе java.time.chrono.ChronoLocalDate
adjustInto, compareTo, format, isAfter, isBefore, isEqual, isLeapYear, isSupported, isSupported, lengthOfYear, query, toEpochDay, toString, until
Методы, объявленные в интерфейсе java.time.temporal.TemporalAccessor
get, range
Подробное описание методов
now
public static ThaiBuddhistDate now()
ThaiBuddhistDate из системных часов в часовом поясе по умолчанию. Это обращается к system clock в часовом поясе по умолчанию, чтобы получить текущую дату.
Использование этого метода предотвратит возможность использования альтернальных часов для тестирования, так как часы жестко закодированы.
- Возвращает:
- текущую дату с использованием системных часов и часового пояса по умолчанию, не null
now
public static ThaiBuddhistDate now(ZoneId zone)
ThaiBuddhistDate из системных часов в указанном часовом поясе. Это обращается к system clock, чтобы получить текущую дату. Указание часового пояса исключает зависимость от часового пояса по умолчанию.
Использование этого метода предотвратит возможность использования альтернативных часов для тестирования, так как часы жестко закодированы.
- Параметры:
-
zone- идентификатор часового пояса для использования, не null - Возвращает:
- текущую дату с использованием системных часов, не null
now
public static ThaiBuddhistDate now(Clock clock)
ThaiBuddhistDate из указанных часов. Это обращается к указанным часам, чтобы получить текущую дату — сегодня. Использование этого метода позволяет использовать альтернативные часы для тестирования. Альтернативные часы могут быть введены с помощью введения зависимостей.
- Параметры:
-
clock- используемые часы, не null - Возвращает:
- текущую дату, не null
- Выбрасывает:
-
DateTimeException- если текущая дата не может быть получена
of
public static ThaiBuddhistDate of(int prolepticYear, int month, int dayOfMonth)
ThaiBuddhistDate, представляющий дату в системе тайского буддийского календаря, по данным пролептического года, месяца и дня. Это возвращает ThaiBuddhistDate с указанными полями. День должен быть действительным для года и месяца, в противном случае будет выброшено исключение.
- Параметры:
-
prolepticYear- пролептический год тайского буддийского календаря -
month- тайский буддийский месяц, от 1 до 12 -
dayOfMonth- тайский буддийский день, от 1 до 31 - Возвращает:
- дату в системе тайского буддийского календаря, не null
- Выбрасывает:
-
DateTimeException- если значение любого поля выходит за пределы диапазона или если день месяца недопустим для месяца и года
from
public static ThaiBuddhistDate from(TemporalAccessor temporal)
ThaiBuddhistDate из временного объекта. Это получает дату в системе тайского буддийского календаря, основанную на указанном временном объекте. TemporalAccessor представляет собой произвольный набор информации о дате и времени, которую этот фабричный метод преобразует в экземпляр ThaiBuddhistDate.
Преобразование обычно использует поле EPOCH_DAY, которое стандартизировано для различных календарных систем.
Этот метод соответствует сигнатуре функционального интерфейса TemporalQuery, позволяя использовать его как запрос через ссылку на метод, ThaiBuddhistDate::from.
- Параметры:
-
temporal- временной объект для преобразования, не null - Возвращает:
- дату в системе тайского буддийского календаря, не null
- Выбрасывает:
-
DateTimeException- если невозможно выполнить преобразование вThaiBuddhistDate
getChronology
public ThaiBuddhistChronology getChronology()
Chronology представляет используемую календарную систему. Эра и другие поля в ChronoField определяются хронологией.
- Указано в:
-
getChronologyв интерфейсеChronoLocalDate - Возвращает:
- тайскую буддийскую хронологию, не null
getEra
public ThaiBuddhistEra getEra()
Система тайского буддийского календаря имеет две эры, 'BE' и 'BEFORE_BE', определённые в ThaiBuddhistEra.
- Указано в:
-
getEraв интерфейсеChronoLocalDate - Возвращает:
- применимую к этой дате эру, не null
lengthOfMonth
public int lengthOfMonth()
Это возвращает длину месяца в днях. Длины месяцев соответствуют длинам месяцев в системе ISO календаря.
- Указано в:
-
lengthOfMonthв интерфейсеChronoLocalDate - Возвращает:
- длину месяца в днях
getLong
public long getLong(TemporalField field)
TemporalAccessorlong. Это запрашивает значение указанного поля у даты-времени. Возвращаемое значение может быть вне допустимого диапазона значений для поля. Если дата-время не может вернуть значение, потому что поле не поддерживается или по какой-либо другой причине, будет выброшено исключение.
- Указано в:
-
getLongв интерфейсеTemporalAccessor - Параметры:
-
field- запрашиваемое поле, не null - Возвращает:
- значение для поля
with
public ThaiBuddhistDate with(TemporalField field, long newValue)
Temporal Это возвращает новый объект, основанный на этом, со значением указанного поля, изменённым. Например, для LocalDate, это можно использовать для установки года, месяца или дня месяца. Возвращаемый объект будет иметь тот же тип наблюдаемости, что и этот объект.
В некоторых случаях изменение поля не полностью определено. Например, если целевой объект представляет собой дату, соответствующую 31 января, а затем изменяется месяц на февраль, это будет неясно. В таких случаях поле отвечает за разрешение результата. Как правило, оно выберет предыдущую допустимую дату, которая в данном примере будет последним допустимым днем февраля.
- Указано в:
-
withв интерфейсеChronoLocalDate - Указано в:
-
withв интерфейсеTemporal - Параметры:
-
field- поле для установки в результате, не null -
newValue- новое значение поля в результате - Возвращает:
- объект того же типа с установленным указанным полем, не null
with
public ThaiBuddhistDate with(TemporalAdjuster adjuster)
Это корректирует эту дату-время в соответствии с правилами указанного корректировщика. Простой корректировщик может просто установить одно из полей, например, поле года. Более сложный корректировщик может установить дату на последнее число месяца. Выбор общих корректировок представлен в TemporalAdjusters. Они включают нахождение "последнего числа месяца" и "следующей среды". Корректировщик отвечает за обработку особых случаев, таких как переменная длина месяца и високосные годы.
Некоторые примеры кода, показывающие, как и почему используется этот метод:
date = date.with(Month.JULY); // most key classes implement TemporalAdjuster date = date.with(lastDayOfMonth()); // static import from Adjusters date = date.with(next(WEDNESDAY)); // static import from Adjusters and DayOfWeek
- Указано в:
-
withв интерфейсеChronoLocalDate - Указано в:
-
withв интерфейсеTemporal - Параметры:
-
adjuster- используемый корректировщик, не null - Возвращает:
- объект того же типа с произведённой корректировкой, не null
- Выбрасывает:
-
DateTimeException- если корректировка не может быть произведена -
ArithmeticException- если происходит переполнение числовых значений
plus
public ThaiBuddhistDate plus(TemporalAmount amount)
Это корректирует этот временной объект, добавляя в соответствии с правилами указанного значения. Это значение обычно является Period, но может быть любого другого типа, реализующего интерфейс TemporalAmount, например, Duration.
Некоторые примеры кода, показывающие, как и почему используется этот метод:
date = date.plus(period); // add a Period instance date = date.plus(duration); // add a Duration instance date = date.plus(workingDays(6)); // example user-written workingDays method
Обратите внимание, что вызов plus, за которым следует minus, не гарантирует возвращения той же даты-времени.
- Указано в:
-
plusв интерфейсеChronoLocalDate - Указано в:
-
plusв интерфейсеTemporal - Параметры:
-
amount- значение для добавления, не null - Возвращает:
- объект того же типа с произведённой корректировкой, не null
- Выбрасывает:
-
DateTimeException- если добавление не может быть произведено -
ArithmeticException- если происходит переполнение числовых значений
minus
public ThaiBuddhistDate minus(TemporalAmount amount)
Это корректирует этот временной интервал, вычитая в соответствии с правилами указанного количества. Величина обычно является Period, но может быть любого другого типа, реализующего интерфейс TemporalAmount, такой как Duration.
Некоторые примеры кода, показывающие, как и почему используется этот метод:
date = date.minus(period); // subtract a Period instance date = date.minus(duration); // subtract a Duration instance date = date.minus(workingDays(6)); // example user-written workingDays method
Обратите внимание, что вызов plus, за которым следует minus, не гарантирует возвращения той же даты и времени.
- Определено в:
-
minusв интерфейсеChronoLocalDate - Определено в:
-
minusв интерфейсеTemporal - Параметры:
-
amount- величина для вычитания, не null - Возвращает:
- объект того же типа с выполненной корректировкой, не null
- Исключения:
-
DateTimeException- если вычитание невозможно -
ArithmeticException- если произошел переполнение числовых данных
plus
public ThaiBuddhistDate plus(long amountToAdd, TemporalUnit unit)
Temporal Этот метод возвращает новый объект, основанный на этом объекте, с добавленным указанным периодом. Например, для LocalDate, это можно использовать для добавления числа лет, месяцев или дней. Возвращаемый объект будет иметь тот же наблюдаемый тип, что и этот объект.
В некоторых случаях изменение поля не полностью определено. Например, если целевой объект представляет дату 31 января, то добавление одного месяца будет неясно. В таких случаях поле отвечает за разрешение результата. Обычно оно выберет предыдущую допустимую дату, которая в этом примере будет последним допустимым днем февраля.
- Определено в:
-
plusв интерфейсеChronoLocalDate - Определено в:
-
plusв интерфейсеTemporal - Параметры:
-
amountToAdd- количество указанного измерения для добавления, может быть отрицательным -
unit- измерение количества для добавления, не null - Возвращает:
- объект того же типа с добавленным указанным периодом, не null
minus
public ThaiBuddhistDate minus(long amountToSubtract, TemporalUnit unit)
Temporal Этот метод возвращает новый объект, основанный на этом объекте, с вычтенным указанным периодом. Например, для LocalDate, это можно использовать для вычитания числа лет, месяцев или дней. Возвращаемый объект будет иметь тот же наблюдаемый тип, что и этот объект.
В некоторых случаях изменение поля не полностью определено. Например, если целевой объект представляет дату 31 марта, то вычитание одного месяца будет неясно. В таких случаях поле отвечает за разрешение результата. Обычно оно выберет предыдущую допустимую дату, которая в этом примере будет последним допустимым днем февраля.
- Определено в:
-
minusв интерфейсеChronoLocalDate - Определено в:
-
minusв интерфейсеTemporal - Параметры:
-
amountToSubtract- количество указанного измерения для вычитания, может быть отрицательным -
unit- измерение количества для вычитания, не null - Возвращает:
- объект того же типа с вычтенным указанным периодом, не null
atTime
public final ChronoLocalDateTime<ThaiBuddhistDate> atTime(LocalTime localTime)
ChronoLocalDateChronoLocalDateTime. Это возвращает ChronoLocalDateTime, сформированный из этой даты в указанное время. Все возможные комбинации даты и времени допустимы.
- Определено в:
-
atTimeв интерфейсеChronoLocalDate - Параметры:
-
localTime- местное время для использования, не null - Возвращает:
- локальная дата-время, сформированная из этой даты и указанного времени, не null
until
public ChronoPeriod until(ChronoLocalDate endDate)
ChronoLocalDateChronoPeriod. Это вычисляет период между двумя датами. Все используемые хронологии вычисляют период с помощью лет, месяцев и дней, однако API ChronoPeriod позволяет представлять период с использованием других единиц.
Точки начала и окончания - this и указанная дата. Результат будет отрицательным, если конец находится до начала. Отрицательный знак будет одинаковым в каждом из года, месяца и дня.
Вычисление выполняется с использованием хронологии этой даты. При необходимости, входная дата будет преобразована для соответствия.
Этот экземпляр неизменяемый и не затрагивается этим вызовом метода.
- Определено в:
-
untilв интерфейсеChronoLocalDate - Параметры:
-
endDate- конечная дата, исключая, которая может быть в любой хронологии, не null - Возвращает:
- период между этой датой и конечной датой, не null
equals
public boolean equals(Object obj)
Сравнивает этот ThaiBuddhistDate с другим, гарантируя, что дата одинаковая.
Сравниваются только объекты типа ThaiBuddhistDate, другие типы возвращают false. Чтобы сравнить даты двух TemporalAccessor экземпляров, включая даты в двух разных хронологиях, используйте ChronoField.EPOCH_DAY в качестве компаратора.
- Определено в:
-
equalsв интерфейсеChronoLocalDate - Параметры:
-
obj- объект для проверки, null возвращает false - Возвращает:
- true, если это равно другой дате
- См. также:
hashCode
public int hashCode()
- Определено в:
-
hashCodeв интерфейсеChronoLocalDate - Возвращает:
- подходящий хеш-код, основанный только на хронологии и дате
- См. также:
until
public long until(Temporal endExclusive, TemporalUnit unit)
ChronoLocalDate Это вычисляет количество времени между двумя ChronoLocalDate объектами в терминах одной TemporalUnit. Точки начала и окончания - this и указанная дата. Результат будет отрицательным, если конец находится до начала. Temporal, переданный в этот метод, преобразуется в ChronoLocalDate с использованием Chronology.date(TemporalAccessor). Вычисление возвращает целое число, представляющее количество полных единиц между двумя датами. Например, количество дней между двумя датами можно вычислить с помощью startDate.until(endDate, DAYS).
Существуют два эквивалентных способа использования этого метода. Первый - вызвать этот метод. Второй - использовать TemporalUnit.between(Temporal, Temporal):
// these two lines are equivalent amount = start.until(end, MONTHS); amount = MONTHS.between(start, end);Выбор должен быть сделан на основе того, что делает код более удобочитаемым.
Вычисление реализовано в этом методе для ChronoUnit. Единицы DAYS, WEEKS, MONTHS, YEARS, DECADES, CENTURIES, MILLENNIA и ERAS должны поддерживаться всеми реализациями. Другие значения ChronoUnit вызовут исключение.
Если единица не является ChronoUnit, то результат этого метода получается путем вызова TemporalUnit.between(Temporal, Temporal), передавая this в качестве первого аргумента и преобразованный входной временной интервал в качестве второго аргумента.
Этот экземпляр неизменяемый и не затрагивается этим вызовом метода.
- Определено в:
-
untilв интерфейсеChronoLocalDate - Определено в:
-
untilв интерфейсеTemporal - Параметры:
-
endExclusive- конечная дата, исключая, которая преобразуется вChronoLocalDateв той же хронологии, не null -
unit- единица измерения количества, не null - Возвращает:
- количество времени между этой датой и конечной датой
toString
public String toString()
ChronoLocalDateString. Вывод будет включать полную локальную дату.
- Указано в:
-
toStringв интерфейсеChronoLocalDate - Переопределяет:
-
toStringв классеObject - Возвращает:
- отформатированную дату, не null
© 1993, 2025, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://download.java.net/java/early_access/jdk24/docs/api/java.base/java/time/chrono/ThaiBuddhistDate.html