Spec-Zone.ru › OpenJDK 24

Класс MinguoDate

java.lang.Object
java.time.chrono.MinguoDate
Все реализованные интерфейсы:
Serializable, Comparable<ChronoLocalDate>, ChronoLocalDate, Temporal, TemporalAccessor, TemporalAdjuster
public final class MinguoDate extends Object implements ChronoLocalDate, Serializable
Дата в календарной системе Мингъо.

Эта дата работает с календарём Мингъо. Эта система календаря в основном используется в Китайской Республике, часто известной как Тайвань. Даты выровнены таким образом, что 0001-01-01 (Minguo) является 1912-01-01 (ISO).

Это значимый класс; программисты должны рассматривать экземпляры, которые равны, как взаимозаменяемые и не должны использовать экземпляры для синхронизации, иначе может произойти непредсказуемое поведение. Например, в будущей версии синхронизация может завершиться неудачей. Для сравнений следует использовать метод equals.

Требования к реализации:
Этот класс неизменяемый и потокобезопасный.
С:
1.8
См. также:
  • Сериализованная форма

Краткое описание методов

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

Для получения текущей даты будет запрошен system clock в часовом поясе по умолчанию.

Использование этого метода предотвратит возможность использования альтернальных часов для тестирования, так как часы жестко закодированы.

Возвращает:
текущую дату, полученную с помощью системных часов и часового пояса по умолчанию, не null

now

public static MinguoDate now(ZoneId zone)
Получает текущую дату из системных часов в указанном часовом поясе.

Для получения текущей даты будет запрошен system clock. Указание часового пояса позволяет избежать зависимости от часового пояса по умолчанию.

Использование этого метода предотвратит возможность использования альтернативных часов для тестирования, так как часы жестко закодированы.

Параметры:
zone - идентификатор часового пояса для использования, не null
Возвращает:
текущую дату, полученную с помощью системных часов, не null

now

public static MinguoDate now(Clock clock)
Получает текущую дату с использованием указанных часов.

Для получения текущей даты будут использованы указанные часы — сегодня. Использование этого метода позволяет использовать альтернативные часы для тестирования. Альтернативные часы могут быть введены с помощью ввода зависимостей.

Параметры:
clock - часы для использования, не null
Возвращает:
текущую дату, не null
Изначает исключение:
DateTimeException - если текущая дата не может быть получена

of

public static MinguoDate of(int prolepticYear, int month, int dayOfMonth)
Получает MinguoDate, представляющую дату в системе календаря Мингуо, по пролептическому году, месяцу и дню.

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

Параметры:
prolepticYear - пролептический год Мингуо
month - месяц Мингуо, от 1 до 12
dayOfMonth - день Мингуо, от 1 до 31
Возвращает:
дату в системе календаря Мингуо, не null
Изначает исключение:
DateTimeException - если значение любого поля выходит за пределы диапазона или если день месяца недопустим для месяца и года

from

public static MinguoDate from(TemporalAccessor temporal)
Получает MinguoDate из временного объекта.

Получает дату в системе календаря Мингуо на основе указанного временного объекта. TemporalAccessor представляет произвольный набор данных о дате и времени, который этот фабричный метод преобразует в экземпляр MinguoDate.

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

Этот метод соответствует сигнатуре функционального интерфейса TemporalQuery, что позволяет использовать его в качестве запроса с помощью ссылки на метод, MinguoDate::from.

Параметры:
temporal - временной объект для преобразования, не null
Возвращает:
дату в системе календаря Мингуо, не null
Изначает исключение:
DateTimeException - если невозможно преобразовать в MinguoDate

getChronology

public MinguoChronology getChronology()
Получает хронологию этой даты, которая является системой календаря Мингуо.

Chronology представляет используемую систему календаря. Эра и другие поля в ChronoField определяются хронологией.

Определяется:
getChronology в интерфейсе ChronoLocalDate
Возвращает:
хронологию Мингуо, не null

getEra

public MinguoEra getEra()
Получает применимую к этой дате эру.

Система календаря Мингуо имеет две эры, 'ROC' и 'BEFORE_ROC', определенные в MinguoEra.

Определяется:
getEra в интерфейсе ChronoLocalDate
Возвращает:
эру, применимую к этой дате, не null

lengthOfMonth

public int lengthOfMonth()
Возвращает длительность месяца, представленного этой датой.

Возвращает длительность месяца в днях. Длительности месяцев соответствуют длительностям месяцев в системе календаря ISO.

Определяется:
lengthOfMonth в интерфейсе ChronoLocalDate
Возвращает:
длительность месяца в днях

getLong

public long getLong(TemporalField field)
Описание скопировано из интерфейса: TemporalAccessor
Получает значение указанного поля в виде long.

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

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

with

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

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

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

Определяется:
with в интерфейсе ChronoLocalDate
Определяется:
with в интерфейсе Temporal
Параметры:
field - поле для задания в результате, не null
newValue - новое значение поля в результате
Возвращает:
объект того же типа со заданным полем, не null

with

public MinguoDate 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 MinguoDate 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 MinguoDate 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 MinguoDate plus(long amountToAdd, TemporalUnit unit)
Описание скопировано из интерфейса: Temporal
Возвращает объект того же типа, что и этот объект, с добавлением указанного периода.

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

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

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

minus

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

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

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

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

atTime

public final ChronoLocalDateTime<MinguoDate> 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)
Сравнивает эту дату с другой датой, включая хронологию.

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

Сравниваются только объекты типа MinguoDate, другие типы возвращают 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()
Описание, скопированное из интерфейса: ChronoLocalDate
Выводит эту дату в формате String.

Вывод будет включать полную локальную дату.

Указано в:
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/MinguoDate.html

Spec-Zone.ru

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