Spec-Zone .ru
спецификации, руководства, описания, API
|
D
- конкретный тип для даты этого разового датойpublic interface ChronoZonedDateTime<D extends ChronoLocalDate<D>> extends Temporal, Comparable<ChronoZonedDateTime<?>>
Большинство приложений должно объявить сигнатуры методов, поля и переменные как ZonedDateTime
, не этот интерфейс.
A ChronoZonedDateTime
абстрактное представление смещения, разового датой где Chronology chronology
, или календарная система, является сменным. Разовое датой определяется с точки зрения полей, выраженных TemporalField
, где наиболее распространенные реализации определяются в ChronoField
. Хронология определяет, как календарная система работает и значение стандартных полей.
ZonedDateTime
вместо этого интерфейса, даже в случае, где приложение должно иметь дело с многократными календарными системами. Объяснение для этого исследуется подробно в ChronoLocalDate
. Гарантируйте что обсуждение в ChronoLocalDate
был считан и понят перед использованием этого интерфейса.
Модификатор и Тип | Метод и Описание |
---|---|
default int |
compareTo(ChronoZonedDateTime<?> other)
Сравнивает это разовое датой с другим разовым датой, включая хронологию.
|
boolean |
equals(Object obj)
Проверки, если это разовое датой равно другому разовому датой.
|
default String |
format(DateTimeFormatter formatter)
Форматы это разовое датой использование указанного средства форматирования.
|
static ChronoZonedDateTime<?> |
from(TemporalAccessor temporal)
Получает экземпляр
ChronoZonedDateTime от временного объекта. |
default int |
get(TemporalField field)
Получает значение указанного поля как
int . |
default long |
getLong(TemporalField field)
Получает значение указанного поля как a
long . |
ZoneOffset |
getOffset()
Получает зональное смещение, такое как '+01:00'.
|
ZoneId |
getZone()
Получает зональный ID, такой как 'Европа/Париж'.
|
int |
hashCode()
Хэш-код для этого разового датой.
|
default boolean |
isAfter(ChronoZonedDateTime<?> other)
Проверки, если момент этого разового датой после того из указанных разовых датой.
|
default boolean |
isBefore(ChronoZonedDateTime<?> other)
Проверки, если момент этого разового датой перед тем из указанных разовых датой.
|
default boolean |
isEqual(ChronoZonedDateTime<?> other)
Проверки, если момент этого разового датой равен тому из указанных разовых датой.
|
boolean |
isSupported(TemporalField field)
Проверки, если указанное поле поддерживается.
|
default ChronoZonedDateTime<D> |
minus(long amountToSubtract, TemporalUnit unit)
Возвращает объект того же самого типа как этот объект с вычтенным установленным периодом.
|
default ChronoZonedDateTime<D> |
minus(TemporalAmount amount)
Возвращает объект того же самого типа как этот объект с вычтенным количеством.
|
ChronoZonedDateTime<D> |
plus(long amountToAdd, TemporalUnit unit)
Возвращает объект того же самого типа как этот объект с добавленным установленным периодом.
|
default ChronoZonedDateTime<D> |
plus(TemporalAmount amount)
Возвращает объект того же самого типа как этот объект с добавленным количеством.
|
default <R> R |
query(TemporalQuery<R> query)
Запросы это разовое датой использование указанного запроса.
|
default ValueRange |
range(TemporalField field)
Получает диапазон допустимых значений для указанного поля.
|
static Comparator<ChronoZonedDateTime<?>> |
timeLineOrder()
Получает компаратор, который сравнивается
ChronoZonedDateTime в порядке временной шкалы, игнорирующем хронологию. |
default long |
toEpochSecond()
Преобразовывает это разовое датой в число секунд от эпохи 1970-01-01T00:00:00Z.
|
default Instant |
toInstant()
Преобразовывает это разовое датой в
Instant . |
default D |
toLocalDate()
Получает локальную часть даты этого разового датой.
|
ChronoLocalDateTime<D> |
toLocalDateTime()
Получает локальную разовую датой часть этого разового датой.
|
default LocalTime |
toLocalTime()
Получает часть местного времени этого разового датой.
|
Строка |
toString()
Выводит это разовое датой как a
String . |
default ChronoZonedDateTime<D> |
with(TemporalAdjuster adjuster)
Возвращает скорректированный объект того же самого типа как этот объект с внесенной корректировкой.
|
ChronoZonedDateTime<D> |
with(TemporalField field, long newValue)
Возвращает объект того же самого типа как этот объект с указанным измененным полем.
|
ChronoZonedDateTime<D> |
withEarlierOffsetAtOverlap()
Возвращает копию этого разового датой изменения зонального смещения к ранее двух допустимых смещений в локальном перекрытии временной шкалы.
|
ChronoZonedDateTime<D> |
withLaterOffsetAtOverlap()
Возвращает копию этого разового датой изменения зонального смещения к позже двух допустимых смещений в локальном перекрытии временной шкалы.
|
ChronoZonedDateTime<D> |
withZoneSameInstant(ZoneId zone)
Возвращает копию этого разового датой с различным часовым поясом, сохраняя момент.
|
ChronoZonedDateTime<D> |
withZoneSameLocal(ZoneId zone)
Возвращает копию этого ZonedDateTime с различным часовым поясом, сохраняя локальную переменную, разовую датой если возможный.
|
periodUntil
static Comparator<ChronoZonedDateTime<?>> timeLineOrder()
ChronoZonedDateTime
в порядке временной шкалы, игнорирующем хронологию. Этот компаратор отличается от сравнения в compareTo(java.time.chrono.ChronoZonedDateTime<?>)
в этом это только сравнивает базовый момент а не хронологию. Это позволяет датам в различных календарных системах быть сравненными основанные на позиции разового датой тотчас временная шкала. Базовое сравнение эквивалентно сравнению с секундой эпохи и nano-of-second.
isAfter(java.time.chrono.ChronoZonedDateTime<?>)
, isBefore(java.time.chrono.ChronoZonedDateTime<?>)
, isEqual(java.time.chrono.ChronoZonedDateTime<?>)
static ChronoZonedDateTime<?> from(TemporalAccessor temporal)
ChronoZonedDateTime
от временного объекта. Это создает зонное разовое датой основанное на указанном временном. A TemporalAccessor
представляет произвольный набор даты и информации времени, из которой эта фабрика преобразовывает в экземпляр ChronoZonedDateTime
.
Преобразование извлекает и комбинирует хронологию, дату, время и зона от временного объекта. Поведение эквивалентно использованию Chronology.zonedDateTime(TemporalAccessor)
с извлеченной хронологией. Реализациям разрешают выполнить оптимизацию, такую как доступ к тем полям, которые эквивалентны соответствующим объектам.
Этот метод соответствует подпись функционального интерфейса TemporalQuery
разрешение этого использоваться в качестве запроса через ссылку метода, ChronoZonedDateTime::from
.
temporal
- временный objec t, чтобы преобразовать, не нульDateTimeException
- если неспособный преобразовать в a ChronoZonedDateTime
Chronology.zonedDateTime(TemporalAccessor)
default ValueRange range(TemporalField field)
TemporalAccessor
Все поля могут быть выражены как a long
целое число. Этот метод возвращает объект, который описывает допустимый диапазон для того значения. Значение этого временного объекта используется, чтобы улучшить точность возвращенного диапазона. Если разовое датой не может возвратить диапазон, потому что поле неподдерживается или по некоторой другой причине, исключение будет выдано.
Отметьте, что результат только описывает минимальные и максимальные допустимые значения, и важно не читать слишком много в них. Например, могли быть значения в пределах диапазона, которые недопустимы для поля.
range
в интерфейсе TemporalAccessor
field
- поле, чтобы запросить диапазон для, не нульdefault int get(TemporalField field)
TemporalAccessor
int
. Это запрашивает разовое датой для значения для указанного поля. Возвращенное значение всегда будет в пределах допустимого диапазона значений для поля. Если разовое датой не может возвратить значение, потому что поле неподдерживается или по некоторой другой причине, исключение будет выдано.
get
в интерфейсе TemporalAccessor
field
- поле, чтобы получить, не нульdefault long getLong(TemporalField field)
TemporalAccessor
long
. Это запрашивает разовое датой для значения для указанного поля. Возвращенное значение может быть вне допустимого диапазона значений для поля. Если разовое датой не может возвратить значение, потому что поле неподдерживается или по некоторой другой причине, исключение будет выдано.
getLong
в интерфейсе TemporalAccessor
field
- поле, чтобы получить, не нульdefault D toLocalDate()
Это возвращает локальную дату с тем же самым годом, месяцем и днем как это разовое датой.
default LocalTime toLocalTime()
Это возвращает местное время с тем же самым часом, минутой, второй и наносекунда как это разовое датой.
ChronoLocalDateTime<D> toLocalDateTime()
Это возвращает локальную дату с тем же самым годом, месяцем и днем как это разовое датой.
ZoneOffset getOffset()
Это - смещение локальной переменной, разовой датой от UTC/Гринвича.
ZoneId getZone()
Это возвращает сохраненный идентификатор часового пояса, используемый, чтобы определить правила часового пояса.
ChronoZonedDateTime<D> withEarlierOffsetAtOverlap()
Этот метод только имеет любой эффект, когда локальная временная шкала накладывается, такой как в осенний переход на летнее время cutover. В этом сценарии есть два допустимых смещения для разовой датой локальной переменной. Вызов этого метода возвратит зонное разовое датой с ранее этих выбранных двух.
Если этот метод вызывают, когда это не перекрытие, this
возвращается.
Этот экземпляр является неизменным и незатронутым этим вызовом метода.
ZoneChronoDateTime
основанный на этом разовом датой с более ранним смещением, не нулемDateTimeException
- если никакие правила не могут быть найдены для зоныDateTimeException
- если никакие правила не допустимы для этого разового датойChronoZonedDateTime<D> withLaterOffsetAtOverlap()
Этот метод только имеет любой эффект, когда локальная временная шкала накладывается, такой как в осенний переход на летнее время cutover. В этом сценарии есть два допустимых смещения для разовой датой локальной переменной. Вызов этого метода возвратит зонное разовое датой с позже этих выбранных двух.
Если этот метод вызывают, когда это не перекрытие, this
возвращается.
Этот экземпляр является неизменным и незатронутым этим вызовом метода.
ChronoZonedDateTime
основанный на этом разовом датой с более поздним смещением, не нулемDateTimeException
- если никакие правила не могут быть найдены для зоныDateTimeException
- если никакие правила не допустимы для этого разового датойChronoZonedDateTime<D> withZoneSameLocal(ZoneId zone)
Этот метод изменяет часовой пояс и сохраняет разовую датой локальную переменную. Разовая датой локальная переменная только изменяется, если это недопустимо для новой зоны.
Чтобы изменить зону и скорректировать разовую датой локальную переменную, использовать withZoneSameInstant(ZoneId)
.
Этот экземпляр является неизменным и незатронутым этим вызовом метода.
zone
- часовой пояс, чтобы изменить на, не нульChronoZonedDateTime
основанный на этом разовом датой с требуемой зоной, не нулемChronoZonedDateTime<D> withZoneSameInstant(ZoneId zone)
Этот метод изменяет часовой пояс и сохраняет момент. Это обычно приводит к изменению к разовой датой локальной переменной.
Этот метод основан на сохранении того же самого момента, таким образом разрывает и накладывается в локальной временной шкале, не имеют никакого эффекта на результат.
Чтобы изменить смещение, сохраняя местное время, использовать withZoneSameLocal(ZoneId)
.
zone
- часовой пояс, чтобы изменить на, не нульChronoZonedDateTime
основанный на этом разовом датой с требуемой зоной, не нулемDateTimeException
- если результат превышает поддерживаемый диапазон датboolean isSupported(TemporalField field)
TemporalAccessor
Это проверяет, может ли разовое датой быть запрошено для указанного поля. Если ложь, то вызов range
и get
методы выдадут исключение.
isSupported
в интерфейсе TemporalAccessor
field
- поле, чтобы проверить, обнулите, возвращает falsedefault ChronoZonedDateTime<D> with(TemporalAdjuster adjuster)
Это корректирует это разовое датой согласно правилам указанного регулятора. Простой регулятор мог бы просто установить то из полей, таких как поле года. Более сложный регулятор мог бы назначить дату к прошлому дню месяца. В выборе общих корректировок обеспечивают TemporalAdjuster
. Они включают обнаружение "в последний день месяца" и "следующей среды". Регулятор ответственен за обработку особых случаев, таких как переменные продолжительности месяца и високосных годов.
Некоторый пример кода, указывающий, как и почему этот метод используется:
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
в интерфейсе Temporal
adjuster
- регулятор, чтобы использовать, не нульDateTimeException
- если неспособный вносить корректировкуArithmeticException
- если числовое переполнение происходитChronoZonedDateTime<D> with(TemporalField field, long newValue)
Это возвращает новое основанное на объектах на этом со значением для указанного измененного поля. Например, на a LocalDate
, это могло использоваться, чтобы установить год, месяц или день-месячного. У возвращенного объекта будет тот же самый заметный тип как этот объект.
В некоторых случаях изменение поля не полностью определяется. Например, если целевой объект является датой, представляющей 31-ого января, то изменение месяца до февраля было бы неясно. В случаях как это поле ответственно за разрешение результата. Обычно это выберет предыдущую допустимую дату, которая была бы прошлым допустимым днем февраля в этом примере.
with
в интерфейсе Temporal
field
- поле, чтобы установить в результате, не нулеnewValue
- новое значение поля в результатеDateTimeException
- если поле не может быть установленоArithmeticException
- если числовое переполнение происходитdefault ChronoZonedDateTime<D> plus(TemporalAmount amount)
Это корректирует это временное, добавляя согласно правилам указанного количества. Количество обычно a 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
в интерфейсе Temporal
amount
- количество, чтобы добавить, не нульDateTimeException
- если дополнение не может быть сделаноArithmeticException
- если числовое переполнение происходитChronoZonedDateTime<D> plus(long amountToAdd, TemporalUnit unit)
Этот метод возвращает новое основанное на объектах на этом с добавленным установленным периодом. Например, на a LocalDate
, это могло использоваться, чтобы добавить много лет, месяцев или дней. У возвращенного объекта будет тот же самый заметный тип как этот объект.
В некоторых случаях изменение поля не полностью определяется. Например, если бы целевой объект является датой, представляющей 31-ого января, то добавление одного месяца было бы неясно. В случаях как это поле ответственно за разрешение результата. Обычно это выберет предыдущую допустимую дату, которая была бы прошлым допустимым днем февраля в этом примере.
plus
в интерфейсе Temporal
amountToAdd
- количество указанного модуля, чтобы добавить, может быть отрицательнымunit
- модуль периода, чтобы добавить, не нульDateTimeException
- если модуль не может быть добавленArithmeticException
- если числовое переполнение происходитdefault ChronoZonedDateTime<D> minus(TemporalAmount amount)
Это корректирует это временное, вычитая согласно правилам указанного количества. Количество обычно a 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
в интерфейсе Temporal
amount
- количество, чтобы вычесть, не нульDateTimeException
- если вычитание не может быть сделаноArithmeticException
- если числовое переполнение происходитdefault ChronoZonedDateTime<D> minus(long amountToSubtract, TemporalUnit unit)
Этот метод возвращает новое основанное на объектах на этом с вычтенным установленным периодом. Например, на a LocalDate
, это могло использоваться, чтобы вычесть много лет, месяцев или дней. У возвращенного объекта будет тот же самый заметный тип как этот объект.
В некоторых случаях изменение поля не полностью определяется. Например, если бы целевой объект является датой, представляющей 31-ого марта, то вычитание одного месяца было бы неясно. В случаях как это поле ответственно за разрешение результата. Обычно это выберет предыдущую допустимую дату, которая была бы прошлым допустимым днем февраля в этом примере.
minus
в интерфейсе Temporal
amountToSubtract
- количество указанного модуля, чтобы вычесть, может быть отрицательнымunit
- модуль периода, чтобы вычесть, не нульDateTimeException
- если модуль не может быть вычтенArithmeticException
- если числовое переполнение происходитdefault <R> R query(TemporalQuery<R> query)
Это запрашивает это разовое датой использование указанного объекта стратегии запроса. TemporalQuery
объект определяет логику, которая будет использоваться, чтобы получить результат. Считайте документацию запроса, чтобы понять, каков результат этого метода будет.
Результат этого метода получается, вызывая TemporalQuery.queryFrom(TemporalAccessor)
метод на указанной передаче запроса this
как параметр.
query
в интерфейсе TemporalAccessor
R
- тип результатаquery
- запрос, чтобы вызвать, не нульDateTimeException
- если неспособный запрашивать (определенный запросом)ArithmeticException
- если числовое переполнение происходит (определенный запросом)default String format(DateTimeFormatter formatter)
Это разовое датой передадут к средству форматирования, чтобы произвести строку.
Реализация по умолчанию должна вести себя следующим образом:
return formatter.format(this);
formatter
- средство форматирования, чтобы использовать, не нульDateTimeException
- если ошибка происходит во время печатиdefault Instant toInstant()
Instant
. Это возвращается Instant
представление той же самой точки на временной шкале как это разовое датой. Вычисление комбинирует разовую датой локальную переменную и смещение.
Instant
представление того же самого момента, не нуляdefault long toEpochSecond()
Это использует разовую датой локальную переменную и смещение, чтобы вычислить значение с секундой эпохи, которое является числом прошедших секунд от 1970-01-01T00:00:00Z. Моменты на временной шкале после эпохи положительны, ранее отрицательны.
default int compareTo(ChronoZonedDateTime<?> other)
Сравнение базируется сначала тотчас, затем на разовой датой локальной переменной, затем на зональном ID, затем на хронологии. Это является "непротиворечивым с, равняется", как определено Comparable
.
Если все разовые датой сравниваемые объекты находятся в той же самой хронологии, то дополнительный этап хронологии не требуется.
Эта реализация по умолчанию выполняет сравнение, определенное выше.
compareTo
в интерфейсе Comparable<ChronoZonedDateTime<?>>
other
- другое разовое датой, чтобы сравнить с, не нульdefault boolean isBefore(ChronoZonedDateTime<?> other)
Этот метод отличается от сравнения в compareTo(java.time.chrono.ChronoZonedDateTime<?>)
в этом это только сравнивает момент разового датой. Это эквивалентно использованию dateTime1.toInstant().isBefore(dateTime2.toInstant());
.
Эта реализация по умолчанию выполняет сравнение, основанное на с секундой эпохи и nano-of-second.
other
- другое разовое датой, чтобы сравнить с, не нульdefault boolean isAfter(ChronoZonedDateTime<?> other)
Этот метод отличается от сравнения в compareTo(java.time.chrono.ChronoZonedDateTime<?>)
в этом это только сравнивает момент разового датой. Это эквивалентно использованию dateTime1.toInstant().isAfter(dateTime2.toInstant());
.
Эта реализация по умолчанию выполняет сравнение, основанное на с секундой эпохи и nano-of-second.
other
- другое разовое датой, чтобы сравнить с, не нульdefault boolean isEqual(ChronoZonedDateTime<?> other)
Этот метод отличается от сравнения в compareTo(java.time.chrono.ChronoZonedDateTime<?>)
и equals(java.lang.Object)
в этом это только сравнивает момент разового датой. Это эквивалентно использованию dateTime1.toInstant().equals(dateTime2.toInstant());
.
Эта реализация по умолчанию выполняет сравнение, основанное на с секундой эпохи и nano-of-second.
other
- другое разовое датой, чтобы сравнить с, не нульboolean equals(Object obj)
Сравнение основано на разовом датой смещении и зона. Чтобы сравниться в течение того же самого момента на временной шкале, использовать compareTo(java.time.chrono.ChronoZonedDateTime<?>)
. Только объекты типа ChronoZonedDateTime
сравниваются, другие типы возвращают false.
equals
в class Object
obj
- объект проверить, обнулите, возвращает falseObject.hashCode()
, HashMap
int hashCode()
hashCode
в class Object
Object.equals(java.lang.Object)
, System.identityHashCode(java.lang.Object)
Для дальнейшей ссылки API и документации разработчика, см. Java Документация SE. Та документация содержит более подробные, предназначенные разработчиком описания, с концептуальными краткими обзорами, определениями сроков, обходных решений, и рабочих примеров кода.
Авторское право © 1993, 2013, Oracle и/или его филиалы. Все права защищены.
Проект сборка-b92