Класс 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 |
atTime |
Объединяет эту дату с временем, чтобы создать ChronoLocalDateTime. |
boolean |
equals |
Сравнивает эту дату с другой датой, включая хронологию. |
static MinguoDate |
from |
Получает MinguoDate из временного объекта. |
MinguoChronology |
getChronology() |
Получает хронологию этой даты, которая представляет календарную систему Мингуо. |
MinguoEra |
getEra() |
Получает эпоху, применимую к этой дате. |
long |
getLong |
Получает значение указанного поля в виде long. |
int |
hashCode() |
Хеш-код для этой даты. |
int |
lengthOfMonth() |
Возвращает длительность месяца, представленного этой датой. |
MinguoDate |
minus |
Возвращает объект того же типа, что и этот объект, с вычетом указанного периода. |
MinguoDate |
minus |
Возвращает объект того же типа, что и этот объект, с вычетом заданного значения. |
static MinguoDate |
now() |
Получает текущую MinguoDate с системных часов в часовом поясе по умолчанию. |
static MinguoDate |
now |
Получает текущую MinguoDate со специфицированных часов. |
static MinguoDate |
now |
Получает текущую MinguoDate с системных часов в указанном часовом поясе. |
static MinguoDate |
of |
Получает MinguoDate, представляющую дату в календарной системе Мингуо, из полей пролептического года, месяца и дня. |
MinguoDate |
plus |
Возвращает объект того же типа, что и этот объект, с добавлением указанного периода. |
MinguoDate |
plus |
Возвращает объект того же типа, что и этот объект, с добавлением заданного значения. |
String |
toString() |
Возвращает строковое представление объекта. |
ChronoPeriod |
until |
Вычисляет период между этой датой и другой датой как ChronoPeriod. |
long |
until |
Вычисляет временной интервал до другой даты в терминах указанной единицы измерения. |
MinguoDate |
with |
Возвращает скорректированный объект того же типа, что и этот объект, с произведённой корректировкой. |
MinguoDate |
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 MinguoDate now()
MinguoDate из системных часов в часовом поясе по умолчанию. Для получения текущей даты будет запрошен system clock в часовом поясе по умолчанию.
Использование этого метода предотвратит возможность использования альтернативных часов для тестирования, так как часы жестко закодированы.
- Возвращает:
- текущую дату с использованием системных часов и часового пояса по умолчанию, не null
now
public static MinguoDate now(ZoneId zone)
MinguoDate из системных часов в указанном часовом поясе. Для получения текущей даты будет запрошен system clock. Указание часового пояса исключает зависимость от часового пояса по умолчанию.
Использование этого метода предотвратит возможность использования альтернативных часов для тестирования, так как часы жестко закодированы.
- Параметры:
-
zone- идентификатор часового пояса для использования, не null - Возвращает:
- текущую дату с использованием системных часов, не null
now
public static MinguoDate now(Clock clock)
MinguoDate из указанных часов. Для получения текущей даты — сегодняшней даты, будет запрошен указанный объект часов. Использование этого метода позволяет использовать альтернативные часы для тестирования. Альтернативные часы могут быть введены с помощью ввода зависимостей.
- Параметры:
-
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)
TemporalAccessorlong. Запрашивает у даты-времени значение указанного поля. Возвращаемое значение может находиться за пределами допустимого диапазона значений для поля. Если дата-время не может вернуть значение, потому что поле не поддерживается или по какой-либо другой причине, будет выброшено исключение.
- Определено в:
-
getLongв интерфейсеTemporalAccessor - Параметры:
-
field- поле для получения, не null - Возвращает:
- значение для поля
with
public MinguoDate with(TemporalField field, long newValue)
ChronoLocalDate Возвращает новый объект, основанный на этом объекте, со значением для указанного поля, изменённым. Например, в 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)
ChronoLocalDate Этот метод возвращает новый объект, основанный на этом объекте, с добавлением указанного периода. Например, для LocalDate, это можно использовать для добавления количества лет, месяцев или дней. Возвращаемый объект будет иметь тот же наблюдаемый тип, что и этот объект.
В некоторых случаях изменение поля не полностью определено. Например, если целевой объект представляет дату 31 января, то добавление одного месяца будет неясным. В таких случаях поле отвечает за разрешение результата. Обычно оно выберет предыдущую допустимую дату, которая в данном примере будет последним допустимым днем февраля.
- Specified by:
-
plusв интерфейсеChronoLocalDate - Specified by:
-
plusв интерфейсеTemporal - Parameters:
-
amountToAdd- количество указанного единицы для добавления, может быть отрицательным -
unit- единица измерения добавляемой величины, не null - Returns:
- объект того же типа с добавлением указанного периода, не null
minus
public MinguoDate 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<MinguoDate> atTime(LocalTime localTime)
ChronoLocalDateChronoLocalDateTime. Это возвращает ChronoLocalDateTime, образованный из этой даты в указанное время. Все возможные комбинации даты и времени допустимы.
- Specified by:
-
atTimeв интерфейсеChronoLocalDate - Parameters:
-
localTime- используемое местное время, не null - Returns:
- локальное дата-время, образованное из этой даты и указанного времени, не null
until
public ChronoPeriod until(ChronoLocalDate endDate)
ChronoLocalDateChronoPeriod. Это вычисляет период между двумя датами. Все используемые хронологии вычисляют период с использованием лет, месяцев и дней, однако 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:
hashCode
public int hashCode()
- Specified by:
-
hashCodeв интерфейсеChronoLocalDate - Returns:
- подходящий хеш-код, основанный только на хронологии и дате
- See Also:
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/MinguoDate.html