Spec-Zone.ru › OpenJDK 21

Класс ThaiBuddhistDate

java.lang.Object
java.time.chrono.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<ThaiBuddhistDate> atTime(LocalTime localTime)
Объединяет эту дату с временем для создания ChronoLocalDateTime.
boolean equals(Object obj)
Сравнивает эту дату с другой датой, включая хронологию.
static ThaiBuddhistDate from(TemporalAccessor temporal)
Получает ThaiBuddhistDate из временного объекта.
ThaiBuddhistChronology getChronology()
Получает хронологию этой даты, которая представляет систему календаря тайского буддизма.
ThaiBuddhistEra getEra()
Получает эпоху, применимую к этой дате.
long getLong(TemporalField field)
Получает значение указанного поля как long.
int hashCode()
Хеш-код для этой даты.
int lengthOfMonth()
Возвращает длину месяца, представленного этой датой.
ThaiBuddhistDate minus(long amountToSubtract, TemporalUnit unit)
Возвращает объект того же типа, что и этот объект, со вычтенным указанным периодом.
ThaiBuddhistDate minus(TemporalAmount amount)
Возвращает объект того же типа, что и этот объект, со вычтенным указанным значением.
static ThaiBuddhistDate now()
Получает текущую ThaiBuddhistDate из системных часов в часовом поясе по умолчанию.
static ThaiBuddhistDate now(Clock clock)
Получает текущую ThaiBuddhistDate из указанных часов.
static ThaiBuddhistDate now(ZoneId zone)
Получает текущую ThaiBuddhistDate из системных часов в указанном часовом поясе.
static ThaiBuddhistDate of(int prolepticYear, int month, int dayOfMonth)
Получает ThaiBuddhistDate, представляющий дату в системе календаря тайского буддизма, из пролептических года, месяца и дня.
ThaiBuddhistDate plus(long amountToAdd, TemporalUnit unit)
Возвращает объект того же типа, что и этот объект, со прибавленным указанным периодом.
ThaiBuddhistDate plus(TemporalAmount amount)
Возвращает объект того же типа, что и этот объект, со прибавленным указанным значением.
String toString()
Возвращает строковое представление объекта.
ChronoPeriod until(ChronoLocalDate endDate)
Вычисляет период между этой датой и другой датой как ChronoPeriod.
long until(Temporal endExclusive, TemporalUnit unit)
Вычисляет количество времени до другой даты в терминах указанной единицы.
ThaiBuddhistDate with(TemporalAdjuster adjuster)
Возвращает скорректированный объект того же типа, что и этот объект, с произведенной корректировкой.
ThaiBuddhistDate with(TemporalField field, long newValue)
Возвращает объект того же типа, что и этот объект, с измененным указанным полем.

Методы, объявленные в классе 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)
Описание скопировано из интерфейса: TemporalAccessor
Получает значение указанного поля в виде long.

Это запрашивает значение указанного поля у даты-времени. Возвращаемое значение может быть вне допустимого диапазона значений для поля. Если дата-время не может вернуть значение, потому что поле не поддерживается или по какой-либо другой причине, будет выброшено исключение.

Определено в:
getLong в интерфейсе TemporalAccessor
Параметры:
field - поле для получения, не null
Возвращает:
значение для поля

with

public ThaiBuddhistDate with(TemporalField field, long newValue)
Описание скопировано из интерфейса: ChronoLocalDate
Возвращает объект того же типа, что и этот объект, с изменённым указанным полем.

Это возвращает новый объект, основанный на этом объекте, со значением для указанного поля, изменённым. Например, для 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 не гарантирует возвращения той же даты и времени.

Specified by:
minus в интерфейсе ChronoLocalDate
Specified by:
minus в интерфейсе Temporal
Parameters:
amount - величина для вычитания, не null
Returns:
объект того же типа с внесенной корректировкой, не null
Throws:
DateTimeException - если вычитание невозможно
ArithmeticException - если произошел переполнение чисел

plus

public ThaiBuddhistDate plus(long amountToAdd, TemporalUnit unit)
Описание скопировано из интерфейса: ChronoLocalDate
Возвращает объект того же типа, что и этот объект, с добавленным указанным периодом.

Этот метод возвращает новый объект, основанный на этом объекте, с добавленным указанным периодом. Например, для LocalDate, это можно использовать для добавления числа лет, месяцев или дней. Возвращаемый объект будет иметь тот же наблюдаемый тип, что и этот объект.

В некоторых случаях изменение поля не полностью определено. Например, если целевой объект представляет собой дату, представляющую 31 января, то добавление одного месяца будет неясно. В таких случаях поле отвечает за разрешение результата. Как правило, оно выберет предыдущую допустимую дату, которая в этом примере будет последним допустимым днем февраля.

Specified by:
plus в интерфейсе ChronoLocalDate
Specified by:
plus в интерфейсе Temporal
Parameters:
amountToAdd - количество указанного единицы для добавления, может быть отрицательным
unit - единица количества для добавления, не null
Returns:
объект того же типа с добавленным указанным периодом, не null

minus

public ThaiBuddhistDate minus(long amountToSubtract, TemporalUnit unit)
Описание скопировано из интерфейса: ChronoLocalDate
Возвращает объект того же типа, что и этот объект, с вычтенным указанным периодом.

Этот метод возвращает новый объект, основанный на этом объекте, с вычтенным указанным периодом. Например, для LocalDate, это можно использовать для вычитания числа лет, месяцев или дней. Возвращаемый объект будет иметь тот же наблюдаемый тип, что и этот объект.

В некоторых случаях изменение поля не полностью определено. Например, если целевой объект представляет собой дату, представляющую 31 марта, то вычитание одного месяца будет неясно. В таких случаях поле отвечает за разрешение результата. Как правило, оно выберет предыдущую допустимую дату, которая в этом примере будет последним допустимым днем февраля.

Specified by:
minus в интерфейсе ChronoLocalDate
Specified by:
minus в интерфейсе Temporal
Parameters:
amountToSubtract - количество указанного единицы для вычитания, может быть отрицательным
unit - единица количества для вычитания, не null
Returns:
объект того же типа с вычтенным указанным периодом, не null

atTime

public final ChronoLocalDateTime<ThaiBuddhistDate> atTime(LocalTime localTime)
Описание скопировано из интерфейса: ChronoLocalDate
Объединяет эту дату с временем, чтобы создать ChronoLocalDateTime.

Это возвращает ChronoLocalDateTime , образованную из этой даты в указанное время. Все возможные комбинации даты и времени являются допустимыми.

Specified by:
atTime в интерфейсе ChronoLocalDate
Parameters:
localTime - местное время для использования, не null
Returns:
местное время, образованное из этой даты и указанного времени, не null

until

public ChronoPeriod until(ChronoLocalDate endDate)
Описание скопировано из интерфейса: ChronoLocalDate
Вычисляет период между этой датой и другой датой как ChronoPeriod.

Это вычисляет период между двумя датами. Все используемые хронологии вычисляют период, используя годы, месяцы и дни, однако API ChronoPeriod позволяет представлять период с использованием других единиц.

Начальная и конечная точки — this и указанная дата. Результат будет отрицательным, если конец находится до начала. Отрицательный знак будет одинаковым в каждом из года, месяца и дня.

Вычисление выполняется с использованием хронологии этой даты. При необходимости входная дата будет преобразована для соответствия.

Этот экземпляр неизменяем и не затрагивается этим вызовом метода.

Specified by:
until в интерфейсе ChronoLocalDate
Parameters:
endDate - конечная дата, исключая, которая может быть в любой хронологии, не null
Returns:
период между этой датой и конечной датой, не null

equals

public boolean equals(Object obj)
Сравнивает эту дату с другой датой, включая хронологию.

Сравнивает эту ThaiBuddhistDate с другой, гарантируя, что дата совпадает.

Сравниваются только объекты типа ThaiBuddhistDate, другие типы возвращают false. Чтобы сравнить даты двух TemporalAccessor экземпляров, включая даты в двух разных хронологиях, используйте ChronoField.EPOCH_DAY в качестве компаратора.

Specified by:
equals в интерфейсе ChronoLocalDate
Parameters:
obj - объект для проверки, null возвращает false
Returns:
true, если эта дата равна другой
See Also:
  • Object.hashCode()
  • HashMap

hashCode

public int hashCode()
Хеш-код для этой даты.
Specified by:
hashCode в интерфейсе ChronoLocalDate
Returns:
подходящий хеш-код, основанный только на хронологии и дате
See Also:
  • Object.equals(java.lang.Object)
  • System.identityHashCode(java.lang.Object)

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 в качестве первого аргумента и преобразованный входной временной интервал в качестве второго аргумента.

Этот экземпляр неизменяем и не затрагивается этим вызовом метода.

Specified by:
until в интерфейсе ChronoLocalDate
Specified by:
until в интерфейсе Temporal
Parameters:
endExclusive - конечная дата, исключая, которая преобразуется в ChronoLocalDate в той же хронологии, не null
unit - единица измерения количества, не null
Returns:
количество времени между этой датой и конечной датой

toString

public String toString()
Описание скопировано из класса: Object
Возвращает строковое представление объекта.
Specified by:
toString в интерфейсе ChronoLocalDate
Overrides:
toString в классе Object
Returns:
строковое представление объекта.

© 1993, 2023, 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://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/time/chrono/ThaiBuddhistDate.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API