Spec-Zone .ru
спецификации, руководства, описания, API
|
public final class OffsetDateTime extends Object implements Temporal, TemporalAdjuster, Comparable<OffsetDateTime>, Serializable
2007-12-03T10:15:30+01:00
.
OffsetDateTime
неизменное представление разового датой со смещением. Этот class хранит всю дату и поля времени к точности наносекунд, так же как смещению от UTC/Гринвича. Например, значение "2-ого октября 2007 в 13:45.30.123456789 +02:00" может быть сохранено в OffsetDateTime
.
OffsetDateTime
, ZonedDateTime
и Instant
все хранилище момент на временной шкале к точности наносекунды. Instant
является самым простым, просто представляя момент. OffsetDateTime
добавляет к моменту смещение от UTC/Гринвича, который позволяет локальной переменной, разовой датой быть полученной. ZonedDateTime
добавляют полные правила часового пояса.
Это предназначается это ZonedDateTime
или Instant
привык к данным модели в более простых приложениях. Этот class может использоваться, моделируя разовые датой понятия более подробно, или связываясь с базой данных или в сетевом протоколе.
Модификатор и Тип | Поле и Описание |
---|---|
static Comparator<OffsetDateTime> |
INSTANT_COMPARATOR
Компаратор для два
OffsetDateTime экземпляры базировались исключительно тотчас. |
static OffsetDateTime |
МАКСИМАЛЬНЫЙ
Максимум поддерживается
OffsetDateTime , '+999999999-12-31T23:59:59.999999999-18:00'. |
static OffsetDateTime |
МИН
Минимум поддерживается
OffsetDateTime , '-999999999-01-01T00:00:00+18:00'. |
Модификатор и Тип | Метод и Описание |
---|---|
Временный |
adjustInto(Temporal temporal)
Корректирует указанный временный объект иметь то же самое смещение, дату и время как этот объект.
|
ZonedDateTime |
atZoneSameInstant(ZoneId zone)
Комбинирует это разовое датой с часовым поясом, чтобы создать a
ZonedDateTime обеспечение, что у результата есть тот же самый момент. |
ZonedDateTime |
atZoneSimilarLocal(ZoneId zone)
Комбинирует это разовое датой с часовым поясом, чтобы создать a
ZonedDateTime попытка сохранить ту же самую локальную дату и время. |
int |
compareTo(OffsetDateTime other)
Сравнивает это
OffsetDateTime другому разовому датой. |
boolean |
equals(Object obj)
Проверки, если это разовое датой равно другому разовому датой.
|
Строка |
format(DateTimeFormatter formatter)
Форматы это разовое датой использование указанного средства форматирования.
|
static OffsetDateTime |
from(TemporalAccessor temporal)
Получает экземпляр
OffsetDateTime от временного объекта. |
int |
get(TemporalField field)
Получает значение указанного поля от этого разового датой как
int . |
int |
getDayOfMonth()
Получает дневное-месячного поле.
|
DayOfWeek |
getDayOfWeek()
Получает дневное-недельного поле, которое является перечислением
DayOfWeek . |
int |
getDayOfYear()
Получает дневное-летнего поле.
|
int |
getHour()
Получает поле часа-дневного.
|
long |
getLong(TemporalField field)
Получает значение указанного поля от этого разового датой как a
long . |
int |
getMinute()
Получает мелкое-часового поле.
|
Месяц |
getMonth()
Получает поле месяца-летнего, используя
Month перечисление. |
int |
getMonthValue()
Получает поле месяца-летнего от 1 до 12.
|
int |
getNano()
Получает nano-of-second поле.
|
ZoneOffset |
getOffset()
Получает зональное смещение, такое как '+01:00'.
|
int |
getSecond()
Получает второе-минутного поле.
|
int |
getYear()
Получает поле года.
|
int |
hashCode()
Хэш-код для этого разового датой.
|
boolean |
isAfter(OffsetDateTime other)
Проверки, если момент этого разового датой после того из указанных разовых датой.
|
boolean |
isBefore(OffsetDateTime other)
Проверки, если момент этого разового датой перед тем из указанных разовых датой.
|
boolean |
isEqual(OffsetDateTime other)
Проверки, если момент этого разового датой равен тому из указанных разовых датой.
|
boolean |
isSupported(TemporalField field)
Проверки, если указанное поле поддерживается.
|
OffsetDateTime |
minus(long amountToSubtract, TemporalUnit unit)
Возвращает копию этого разового датой с указанным вычтенным количеством.
|
OffsetDateTime |
minus(TemporalAmount amountToSubtract)
Возвращает копию этого разового датой с указанным вычтенным количеством.
|
OffsetDateTime |
minusDays(long days)
Возвращает копию этого
OffsetDateTime с установленным периодом в вычтенных днях. |
OffsetDateTime |
minusHours(long hours)
Возвращает копию этого
OffsetDateTime с установленным периодом в вычтенных часах. |
OffsetDateTime |
minusMinutes(long minutes)
Возвращает копию этого
OffsetDateTime с установленным периодом в вычтенных минутах. |
OffsetDateTime |
minusMonths(long months)
Возвращает копию этого
OffsetDateTime с установленным периодом в вычтенных месяцах. |
OffsetDateTime |
minusNanos(long nanos)
Возвращает копию этого
OffsetDateTime с установленным периодом в вычтенных наносекундах. |
OffsetDateTime |
minusSeconds(long seconds)
Возвращает копию этого
OffsetDateTime с установленным периодом в вычтенных секундах. |
OffsetDateTime |
minusWeeks(long weeks)
Возвращает копию этого
OffsetDateTime с установленным периодом в вычтенных неделях. |
OffsetDateTime |
minusYears(long years)
Возвращает копию этого
OffsetDateTime с установленным периодом в вычтенных годах. |
static OffsetDateTime |
now()
Получает ток, разовый датой из системных часов в часовом поясе значения по умолчанию.
|
static OffsetDateTime |
now(Clock clock)
Получает ток, разовый датой из указанных часов.
|
static OffsetDateTime |
now(ZoneId zone)
Получает ток, разовый датой из системных часов в указанном часовом поясе.
|
static OffsetDateTime |
of(int year, int month, int dayOfMonth, int hour, int minute, int second, int nanoOfSecond, ZoneOffset offset)
Получает экземпляр
OffsetDateTime с года, месяца, дня, часа, минуты, во-вторых, наносекунды и смещения. |
static OffsetDateTime |
of(LocalDate date, LocalTime time, ZoneOffset offset)
Получает экземпляр
OffsetDateTime с даты, время и смещение. |
static OffsetDateTime |
of(LocalDateTime dateTime, ZoneOffset offset)
Получает экземпляр
OffsetDateTime от разового датой и смещения. |
static OffsetDateTime |
ofInstant(Instant instant, ZoneId zone)
Получает экземпляр
OffsetDateTime от Instant и зональный ID. |
static OffsetDateTime |
parse(CharSequence text)
Получает экземпляр
OffsetDateTime от текстовой строки такой как 2007-12-03T10:15:30+01:00 . |
static OffsetDateTime |
parse(CharSequence text, DateTimeFormatter formatter)
Получает экземпляр
OffsetDateTime от текстовой строки, используя определенное средство форматирования. |
long |
periodUntil(Temporal endDateTime, TemporalUnit unit)
Вычисляет количество времени до другого разового датой с точки зрения указанного модуля.
|
OffsetDateTime |
plus(long amountToAdd, TemporalUnit unit)
Возвращает копию этого разового датой с указанным добавленным количеством.
|
OffsetDateTime |
plus(TemporalAmount amountToAdd)
Возвращает копию этого разового датой с указанным добавленным количеством.
|
OffsetDateTime |
plusDays(long days)
Возвращает копию этого OffsetDateTime с установленным периодом в добавленных днях.
|
OffsetDateTime |
plusHours(long hours)
Возвращает копию этого
OffsetDateTime с установленным периодом в добавленных часах. |
OffsetDateTime |
plusMinutes(long minutes)
Возвращает копию этого
OffsetDateTime с установленным периодом в добавленных минутах. |
OffsetDateTime |
plusMonths(long months)
Возвращает копию этого
OffsetDateTime с установленным периодом в добавленных месяцах. |
OffsetDateTime |
plusNanos(long nanos)
Возвращает копию этого
OffsetDateTime с установленным периодом в добавленных наносекундах. |
OffsetDateTime |
plusSeconds(long seconds)
Возвращает копию этого
OffsetDateTime с установленным периодом в добавленных секундах. |
OffsetDateTime |
plusWeeks(long weeks)
Возвращает копию этого OffsetDateTime с установленным периодом в добавленных неделях.
|
OffsetDateTime |
plusYears(long years)
Возвращает копию этого
OffsetDateTime с установленным периодом в добавленных годах. |
<R> R |
query(TemporalQuery<R> query)
Запросы это разовое датой использование указанного запроса.
|
ValueRange |
range(TemporalField field)
Получает диапазон допустимых значений для указанного поля.
|
long |
toEpochSecond()
Преобразовывает это разовое датой в число секунд от эпохи 1970-01-01T00:00:00Z.
|
Момент |
toInstant()
Преобразовывает это разовое датой в
Instant . |
LocalDate |
toLocalDate()
Добирается
LocalDate часть этого разового датой. |
LocalDateTime |
toLocalDateTime()
Добирается
LocalDateTime часть этого разового датой смещения. |
LocalTime |
toLocalTime()
Добирается
LocalTime часть этого разового датой. |
OffsetTime |
toOffsetTime()
Преобразовывает это разовое датой в
OffsetTime . |
Строка |
toString()
Выводит это разовое датой как a
String , такой как 2007-12-03T10:15:30+01:00 . |
ZonedDateTime |
toZonedDateTime()
Преобразовывает это разовое датой в a
ZonedDateTime использование смещения как зональный ID. |
OffsetDateTime |
truncatedTo(TemporalUnit unit)
Возвращает копию этого
OffsetDateTime с усеченным временем. |
OffsetDateTime |
with(TemporalAdjuster adjuster)
Возвращает скорректированную копию этого разового датой.
|
OffsetDateTime |
with(TemporalField field, long newValue)
Возвращает копию этого разового датой с указанным полевым набором к новому значению.
|
OffsetDateTime |
withDayOfMonth(int dayOfMonth)
Возвращает копию этого
OffsetDateTime с измененным днем-месячного. |
OffsetDateTime |
withDayOfYear(int dayOfYear)
Возвращает копию этого
OffsetDateTime с измененным днем-летнего. |
OffsetDateTime |
withHour(int hour)
Возвращает копию этого
OffsetDateTime с измененным значением часа-дневного. |
OffsetDateTime |
withMinute(int minute)
Возвращает копию этого
OffsetDateTime с мелким-часового измененным значением. |
OffsetDateTime |
withMonth(int month)
Возвращает копию этого
OffsetDateTime с измененным месяцем-летнего. |
OffsetDateTime |
withNano(int nanoOfSecond)
Возвращает копию этого
OffsetDateTime с измененным значением nano-of-second. |
OffsetDateTime |
withOffsetSameInstant(ZoneOffset offset)
Возвращает копию этого
OffsetDateTime с указанным смещением, гарантирующим, что результат в тот же самый момент. |
OffsetDateTime |
withOffsetSameLocal(ZoneOffset offset)
Возвращает копию этого
OffsetDateTime с указанным смещением, гарантирующим, что у результата есть та же самая разовая датой локальная переменная. |
OffsetDateTime |
withSecond(int second)
Возвращает копию этого
OffsetDateTime со вторым-минутного измененным значением. |
OffsetDateTime |
withYear(int year)
Возвращает копию этого
OffsetDateTime с измененным годом. |
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
dayOfWeekInMonth, firstDayOfMonth, firstDayOfNextMonth, firstDayOfNextYear, firstDayOfYear, firstInMonth, lastDayOfMonth, lastDayOfYear, lastInMonth, next, nextOrSame, ofDateAdjuster, previous, previousOrSame
public static final OffsetDateTime MIN
OffsetDateTime
, '-999999999-01-01T00:00:00+18:00'. Это - локальная переменная, разовая датой из полуночи в начале минимальной даты в максимальном смещении (большие смещения являются раньше временной шкалой). Это объединяется LocalDateTime.MIN
и ZoneOffset.MAX
. Это могло использоваться приложением в качестве "далекого прошлого", разового датой.public static final OffsetDateTime MAX
OffsetDateTime
, '+999999999-12-31T23:59:59.999999999-18:00'. Это - локальная переменная, разовая датой как раз перед полуночью в конце максимальной даты в минимальном смещении (большие отрицательные смещения являются позже временной шкалой). Это объединяется LocalDateTime.MAX
и ZoneOffset.MIN
. Это могло использоваться приложением в качестве "далекого будущего", разового датой.public static final Comparator<OffsetDateTime> INSTANT_COMPARATOR
OffsetDateTime
экземпляры базировались исключительно тотчас. Этот метод отличается от сравнения в compareTo(java.time.OffsetDateTime)
в этом это только сравнивает базовый момент.
public static OffsetDateTime now()
Это запросит system clock
в часовом поясе значения по умолчанию, чтобы получить разовый датой ток. Смещение будет вычислено от часового пояса в часах.
Используя этот метод предотвратит возможность использовать альтернативные часы для того, чтобы протестировать, потому что часы трудно кодируются.
public static OffsetDateTime now(ZoneId zone)
Это запросит system clock
получить разовый датой ток. Определение часового пояса избегает зависимости от часового пояса значения по умолчанию. Смещение будет вычислено от указанного часового пояса.
Используя этот метод предотвратит возможность использовать альтернативные часы для того, чтобы протестировать, потому что часы трудно кодируются.
zone
- зональный ID, чтобы использовать, не нульpublic static OffsetDateTime now(Clock clock)
Это запросит указанные часы, чтобы получить разовый датой ток. Смещение будет вычислено от часового пояса в часах.
Используя этот метод позволяет использование альтернативных часов для того, чтобы протестировать. Альтернативные часы могут быть представлены, используя dependency injection
.
clock
- часы, чтобы использовать, не нульpublic static OffsetDateTime of(LocalDate date, LocalTime time, ZoneOffset offset)
OffsetDateTime
с даты, время и смещение. Это создает смещение, разовое датой с указанной локальной датой, время и смещение.
date
- локальная дата, не нульtime
- местное время, не нульoffset
- зональное смещение, не нульpublic static OffsetDateTime of(LocalDateTime dateTime, ZoneOffset offset)
OffsetDateTime
от разового датой и смещения. Это создает смещение, разовое датой с указанной разовой датой локальной переменной и смещение.
dateTime
- разовая датой локальная переменная, не нулевойoffset
- зональное смещение, не нульpublic static OffsetDateTime of(int year, int month, int dayOfMonth, int hour, int minute, int second, int nanoOfSecond, ZoneOffset offset)
OffsetDateTime
с года, месяца, дня, часа, минуты, во-вторых, наносекунды и смещения. Это создает смещение, разовое датой с семью указанными полями.
Этот метод существует прежде всего для того, чтобы записать прецеденты. Не тестовый код будет обычно использовать другие методы, чтобы создать время смещения. LocalDateTime
имеет пять дополнительных разновидностей удобства эквивалентного метода фабрики, берущего меньше параметров. Им не обеспечивают здесь, чтобы уменьшить место API.
year
- год, чтобы представить, от MIN_YEAR до MAX_YEARmonth
- месяц-летнего, чтобы представить, от 1 (январь) к 12 (декабрь)dayOfMonth
- день-месячного, чтобы представить, от 1 до 31hour
- час-дневного, чтобы представить, от 0 до 23minute
- минута-часового, чтобы представить, от 0 до 59second
- второе-минутного, чтобы представить, от 0 до 59nanoOfSecond
- nano-of-second, чтобы представить, от 0 до 999 999 999offset
- зональное смещение, не нульDateTimeException
- если значение какого-либо поля испытывает недостаток диапазона, или если день-месячного недопустим для летнего месяцемpublic static OffsetDateTime ofInstant(Instant instant, ZoneId zone)
OffsetDateTime
от Instant
и зональный ID. Это создает смещение, разовое датой с тем же самым моментом, как это определило. Обнаружение смещения от UTC/Гринвича просто, поскольку есть только одно допустимое смещение в течение каждого момента.
instant
- момент, чтобы создать разовое датой из, не нульzone
- часовой пояс, который может быть смещением, не нулемDateTimeException
- если результат превышает поддерживаемый диапазонpublic static OffsetDateTime from(TemporalAccessor temporal)
OffsetDateTime
от временного объекта. Это получает смещение, разовое датой основанный на указанном временном. A TemporalAccessor
представляет произвольный набор даты и информации времени, из которой эта фабрика преобразовывает в экземпляр OffsetDateTime
.
Преобразование сначала получит a ZoneOffset
от временного объекта. Это тогда попытается получить a LocalDateTime
, отступание к Instant
в случае необходимости. Результатом будет комбинация ZoneOffset
с любым с LocalDateTime
или Instant
. Реализациям разрешают выполнить оптимизацию, такую как доступ к тем полям, которые эквивалентны соответствующим объектам.
Этот метод соответствует подпись функционального интерфейса TemporalQuery
разрешение этого использоваться в запросах через ссылку метода, OffsetDateTime::from
.
temporal
- временный объект преобразовать, не нульDateTimeException
- если неспособный преобразовать в OffsetDateTime
public static OffsetDateTime parse(CharSequence text)
OffsetDateTime
от текстовой строки такой как 2007-12-03T10:15:30+01:00
. Строка должна представить допустимое разовое датой и анализируется, используя DateTimeFormatter.ISO_OFFSET_DATE_TIME
.
text
- текст, чтобы проанализировать такой как "2007-12-03T10:15:30+01:00", не нульDateTimeParseException
- если текст не может быть проанализированpublic static OffsetDateTime parse(CharSequence text, DateTimeFormatter formatter)
OffsetDateTime
от текстовой строки, используя определенное средство форматирования. Текст анализируется, используя средство форматирования, возвращая разовое датой.
text
- текст, чтобы проанализировать, не нульformatter
- средство форматирования, чтобы использовать, не нульDateTimeParseException
- если текст не может быть проанализированpublic boolean isSupported(TemporalField field)
Это проверяет, может ли это разовое датой быть запрошено для указанного поля. Если ложь, то вызов range
и get
методы выдадут исключение.
Если поле является a ChronoField
тогда запрос реализуется здесь. Поддерживаемые поля:
NANO_OF_SECOND
NANO_OF_DAY
MICRO_OF_SECOND
MICRO_OF_DAY
MILLI_OF_SECOND
MILLI_OF_DAY
SECOND_OF_MINUTE
SECOND_OF_DAY
MINUTE_OF_HOUR
MINUTE_OF_DAY
HOUR_OF_AMPM
CLOCK_HOUR_OF_AMPM
HOUR_OF_DAY
CLOCK_HOUR_OF_DAY
AMPM_OF_DAY
DAY_OF_WEEK
ALIGNED_DAY_OF_WEEK_IN_MONTH
ALIGNED_DAY_OF_WEEK_IN_YEAR
DAY_OF_MONTH
DAY_OF_YEAR
EPOCH_DAY
ALIGNED_WEEK_OF_MONTH
ALIGNED_WEEK_OF_YEAR
MONTH_OF_YEAR
PROLEPTIC_MONTH
YEAR_OF_ERA
YEAR
ERA
INSTANT_SECONDS
OFFSET_SECONDS
ChronoField
экземпляры возвратят false. Если поле не является a ChronoField
, тогда результат этого метода получается, вызывая TemporalField.isSupportedBy(TemporalAccessor)
передача this
как параметр. Поддерживается ли поле, определяется полем.
isSupported
в интерфейсе TemporalAccessor
field
- поле, чтобы проверить, обнулите, возвращает falsepublic ValueRange range(TemporalField field)
Объект диапазона выражает минимальные и максимальные допустимые значения для поля. Это разовое датой используется, чтобы улучшить точность возвращенного диапазона. Если не возможно возвратить диапазон, потому что поле не поддерживается или по некоторой другой причине, исключение выдается.
Если поле является a ChronoField
тогда запрос реализуется здесь. supported fields
возвратит соответствующие экземпляры диапазона. Все другой ChronoField
экземпляры бросят UnsupportedTemporalTypeException
.
Если поле не является a ChronoField
, тогда результат этого метода получается, вызывая TemporalField.rangeRefinedBy(TemporalAccessor)
передача this
как параметр. Может ли диапазон быть получен, определяется полем.
range
в интерфейсе TemporalAccessor
field
- поле, чтобы запросить диапазон для, не нульDateTimeException
- если диапазон для поля не может быть полученUnsupportedTemporalTypeException
- если поле не поддерживаетсяpublic int get(TemporalField field)
int
. Это запрашивает это разовое датой для значения для указанного поля. Возвращенное значение всегда будет в пределах допустимого диапазона значений для поля. Если не возможно возвратить значение, потому что поле не поддерживается или по некоторой другой причине, исключение выдается.
Если поле является a ChronoField
тогда запрос реализуется здесь. supported fields
возвратит допустимые значения, основанные на этом разовом датой, кроме NANO_OF_DAY
, MICRO_OF_DAY
, EPOCH_DAY
, PROLEPTIC_MONTH
и INSTANT_SECONDS
которые являются слишком большими, чтобы вписаться int
и бросок a DateTimeException
. Все другой ChronoField
экземпляры бросят UnsupportedTemporalTypeException
.
Если поле не является a ChronoField
, тогда результат этого метода получается, вызывая TemporalField.getFrom(TemporalAccessor)
передача this
как параметр. Может ли значение быть получено, и что представляет значение, определяется полем.
get
в интерфейсе TemporalAccessor
field
- поле, чтобы получить, не нульDateTimeException
- если значение для поля не может быть получено, или значение вне диапазона допустимых значений для поляUnsupportedTemporalTypeException
- если поле не поддерживается, или диапазон значений превышает int
ArithmeticException
- если числовое переполнение происходитpublic long getLong(TemporalField field)
long
. Это запрашивает это разовое датой для значения для указанного поля. Если не возможно возвратить значение, потому что поле не поддерживается или по некоторой другой причине, исключение выдается.
Если поле является a ChronoField
тогда запрос реализуется здесь. supported fields
возвратит допустимые значения, основанные на этом разовом датой. Все другой ChronoField
экземпляры бросят UnsupportedTemporalTypeException
.
Если поле не является a ChronoField
, тогда результат этого метода получается, вызывая TemporalField.getFrom(TemporalAccessor)
передача this
как параметр. Может ли значение быть получено, и что представляет значение, определяется полем.
getLong
в интерфейсе TemporalAccessor
field
- поле, чтобы получить, не нульDateTimeException
- если значение для поля не может быть полученоUnsupportedTemporalTypeException
- если поле не поддерживаетсяArithmeticException
- если числовое переполнение происходитpublic ZoneOffset getOffset()
Это - смещение локальной переменной, разовой датой от UTC/Гринвича.
public OffsetDateTime withOffsetSameLocal(ZoneOffset offset)
OffsetDateTime
с указанным смещением, гарантирующим, что у результата есть та же самая разовая датой локальная переменная. Этот метод возвращает объект с тем же самым LocalDateTime
и указанное ZoneOffset
. Никакое вычисление не необходимо или выполняется. Например, если на сей раз представляет 2007-12-03T10:30+02:00
и определенное смещение +03:00
, тогда этот метод возвратится 2007-12-03T10:30+03:00
.
Принять во внимание различие между смещениями, и скорректировать поля времени, использование withOffsetSameInstant(java.time.ZoneOffset)
.
Этот экземпляр является неизменным и незатронутым этим вызовом метода.
offset
- зональное смещение, чтобы изменить на, не нульOffsetDateTime
основанный на этом разовом датой с требуемым смещением, не нулемpublic OffsetDateTime withOffsetSameInstant(ZoneOffset offset)
OffsetDateTime
с указанным смещением, гарантирующим, что результат в тот же самый момент. Этот метод возвращает объект с указанным ZoneOffset
и a LocalDateTime
скорректированный различием между двумя смещениями. Это приведет к старым и новым объектам, представляющим тот же самый момент. Это полезно для открытия местного времени в различном смещении. Например, если на сей раз представляет 2007-12-03T10:30+02:00
и определенное смещение +03:00
, тогда этот метод возвратится 2007-12-03T11:30+03:00
.
Изменить смещение, не корректируя использование местного времени withOffsetSameLocal(java.time.ZoneOffset)
.
Этот экземпляр является неизменным и незатронутым этим вызовом метода.
offset
- зональное смещение, чтобы изменить на, не нульOffsetDateTime
основанный на этом разовом датой с требуемым смещением, не нулемDateTimeException
- если результат превышает поддерживаемый диапазон датpublic LocalDateTime toLocalDateTime()
LocalDateTime
часть этого разового датой смещения. Это возвращает a LocalDateTime
с тем же самым годом, месяцем, днем и временем как это разовое датой.
public LocalDate toLocalDate()
LocalDate
часть этого разового датой. Это возвращает a LocalDate
с тем же самым годом, месяцем и днем как это разовое датой.
public int getYear()
Этот метод возвращает примитив int
значение в течение года.
Год, возвращенный этим методом, является преждевременным согласно get(YEAR)
. Чтобы получить год эры, использовать get(YEAR_OF_ERA)
.
public int getMonthValue()
Этот метод возвращает месяц как int
от 1 до 12. Код программы является часто более четким если перечисление Month
используется, вызывая getMonth()
.
getMonth()
public Month getMonth()
Month
перечисление. Этот метод возвращает перечисление Month
в течение месяца. Это избегает беспорядка относительно какой int
среднее значение значений. Если Вы нуждаетесь в доступе к примитиву int
значение тогда перечисление обеспечивает int value
.
getMonthValue()
public int getDayOfMonth()
Этот метод возвращает примитив int
значение в течение дня-месячного.
public int getDayOfYear()
Этот метод возвращает примитив int
значение в течение дня-летнего.
public DayOfWeek getDayOfWeek()
DayOfWeek
. Этот метод возвращает перечисление DayOfWeek
в течение дня-недельного. Это избегает беспорядка относительно какой int
среднее значение значений. Если Вы нуждаетесь в доступе к примитиву int
значение тогда перечисление обеспечивает int value
.
Дополнительная информация может быть получена из DayOfWeek
. Это включает текстовые имена значений.
public LocalTime toLocalTime()
LocalTime
часть этого разового датой. Это возвращает a LocalTime
с тем же самым часом, минутой, второй и наносекунда как это разовое датой.
public int getHour()
public int getMinute()
public int getSecond()
public int getNano()
public OffsetDateTime with(TemporalAdjuster adjuster)
Это возвращается OffsetDateTime
, основанный на этом, со скорректированным разовым датой. Корректировка имеет место, используя указанный объект стратегии регулятора. Считайте документацию регулятора, чтобы понять, какая корректировка будет внесена.
Простой регулятор мог бы просто установить то из полей, таких как поле года. Более сложный регулятор мог бы назначить дату к прошлому дню месяца. В выборе общих корректировок обеспечивают TemporalAdjuster
. Они включают обнаружение "в последний день месяца" и "следующей среды". Разовые основным сроком классы также реализуют TemporalAdjuster
интерфейс, такой как Month
и MonthDay
. Регулятор ответственен за обработку особых случаев, таких как переменные продолжительности месяца и високосных годов.
Например этот код возвращает дату в прошлый день июля:
import static java.time.Month.*; import static java.time.temporal.Adjusters.*; result = offsetDateTime.with(JULY).with(lastDayOfMonth());
Классы LocalDate
, LocalTime
и ZoneOffset
реализация TemporalAdjuster
, таким образом этот метод может использоваться, чтобы изменить дату, время или сместить:
result = offsetDateTime.with(date); result = offsetDateTime.with(time); result = offsetDateTime.with(offset);
Результат этого метода получается, вызывая TemporalAdjuster.adjustInto(Temporal)
метод на указанной передаче регулятора this
как параметр.
Этот экземпляр является неизменным и незатронутым этим вызовом метода.
with
в интерфейсе Temporal
adjuster
- регулятор, чтобы использовать, не нульOffsetDateTime
основанный на this
с внесенной корректировкой, не нульDateTimeException
- если корректировка не может быть внесенаArithmeticException
- если числовое переполнение происходитpublic OffsetDateTime with(TemporalField field, long newValue)
TThis возвращается OffsetDateTime
, основанный на этом, со значением для указанного поля изменился. Это может использоваться, чтобы изменить любое поддерживаемое поле, такое как год, месяц или день-месячного. Если не возможно установить значение, потому что поле не поддерживается или по некоторой другой причине, исключение выдается.
В некоторых случаях изменение указанного поля может заставить получающееся разовое датой становиться недопустимым, такие как изменение месяца с 31-ого января до февраля сделал бы день-месячного недопустимым. В случаях как это поле ответственно за разрешение даты. Обычно это выберет предыдущую допустимую дату, которая была бы прошлым допустимым днем февраля в этом примере.
Если поле является a ChronoField
тогда корректировка реализуется здесь.
INSTANT_SECONDS
поле возвратит разовое датой с указанным моментом. Смещение и nano-of-second неизменны. Если новое мгновенное значение вне допустимого диапазона тогда a DateTimeException
будет брошен.
OFFSET_SECONDS
поле возвратит разовое датой с указанным смещением. Разовая датой локальная переменная неизменна. Если новое значение смещения вне допустимого диапазона тогда a DateTimeException
будет брошен.
Другой supported fields
будет вести себя согласно соответствующему методу на LocalDateTime
. В этом случае смещение не является частью вычисления и будет неизменно.
Все другой ChronoField
экземпляры бросят UnsupportedTemporalTypeException
.
Если поле не является a ChronoField
, тогда результат этого метода получается, вызывая TemporalField.adjustInto(Temporal, long)
передача this
как параметр. В этом случае поле определяет, ли и как скорректировать момент.
Этот экземпляр является неизменным и незатронутым этим вызовом метода.
with
в интерфейсе Temporal
field
- поле, чтобы установить в результате, не нулеnewValue
- новое значение поля в результатеOffsetDateTime
основанный на this
с указанным полевым набором, не нулемDateTimeException
- если поле не может быть установленоUnsupportedTemporalTypeException
- если поле не поддерживаетсяArithmeticException
- если числовое переполнение происходитpublic OffsetDateTime withYear(int year)
OffsetDateTime
с измененным годом. Смещение не влияет на вычисление и будет тем же самым в результате. Если день-месячного будет недопустим в течение года, то он будет изменен на прошлый допустимый день месяца. Этот экземпляр является неизменным и незатронутым этим вызовом метода.
year
- год, чтобы установить в результате, от MIN_YEAR до MAX_YEAROffsetDateTime
основанный на этом разовом датой с требуемым годом, не нулемDateTimeException
- если значение года недопустимоpublic OffsetDateTime withMonth(int month)
OffsetDateTime
с измененным месяцем-летнего. Смещение не влияет на вычисление и будет тем же самым в результате. Если день-месячного будет недопустим в течение года, то он будет изменен на прошлый допустимый день месяца. Этот экземпляр является неизменным и незатронутым этим вызовом метода.
month
- месяц-летнего, чтобы установить в результате, от 1 (январь) к 12 (декабрь)OffsetDateTime
основанный на этом разовом датой с требуемым месяцем, не нулемDateTimeException
- если значение месяца-летнего недопустимоpublic OffsetDateTime withDayOfMonth(int dayOfMonth)
OffsetDateTime
с измененным днем-месячного. Если получающееся OffsetDateTime
недопустимо, исключение выдается. Смещение не влияет на вычисление и будет тем же самым в результате. Этот экземпляр является неизменным и незатронутым этим вызовом метода.
dayOfMonth
- день-месячного, чтобы установить в результате, от 1 до 28-31OffsetDateTime
основанный на этом разовом датой с требуемым днем, не нулемDateTimeException
- если дневное-месячного значение недопустимо, или если день-месячного недопустим для летнего месяцемpublic OffsetDateTime withDayOfYear(int dayOfYear)
OffsetDateTime
с измененным днем-летнего. Если получающееся OffsetDateTime
недопустимо, исключение выдается. Этот экземпляр является неизменным и незатронутым этим вызовом метода.
dayOfYear
- день-летнего, чтобы установить в результате, от 1 до 365-366OffsetDateTime
основанный на этой дате с требуемым днем, не нулеDateTimeException
- если дневное-летнего значение недопустимо, или если день-летнего недопустим в течение годаpublic OffsetDateTime withHour(int hour)
OffsetDateTime
с измененным значением часа-дневного. Смещение не влияет на вычисление и будет тем же самым в результате.
Этот экземпляр является неизменным и незатронутым этим вызовом метода.
hour
- час-дневного, чтобы установить в результате, от 0 до 23OffsetDateTime
основанный на этом разовом датой с требуемым часом, не нулемDateTimeException
- если значение часа недопустимоpublic OffsetDateTime withMinute(int minute)
OffsetDateTime
с мелким-часового измененным значением. Смещение не влияет на вычисление и будет тем же самым в результате.
Этот экземпляр является неизменным и незатронутым этим вызовом метода.
minute
- минута-часового, чтобы установить в результате, от 0 до 59OffsetDateTime
основанный на этом разовом датой с требуемой минутой, не нулемDateTimeException
- если мелкое значение недопустимоpublic OffsetDateTime withSecond(int second)
OffsetDateTime
со вторым-минутного измененным значением. Смещение не влияет на вычисление и будет тем же самым в результате.
Этот экземпляр является неизменным и незатронутым этим вызовом метода.
second
- второе-минутного, чтобы установить в результате, от 0 до 59OffsetDateTime
основанный на этом разовом датой с требуемой секундой, не нулевойDateTimeException
- если второе значение недопустимоpublic OffsetDateTime withNano(int nanoOfSecond)
OffsetDateTime
с измененным значением nano-of-second. Смещение не влияет на вычисление и будет тем же самым в результате.
Этот экземпляр является неизменным и незатронутым этим вызовом метода.
nanoOfSecond
- nano-of-second, чтобы установить в результате, от 0 до 999 999 999OffsetDateTime
основанный на этом разовом датой с требуемой наносекундой, не нулемDateTimeException
- если значение nanos недопустимоpublic OffsetDateTime truncatedTo(TemporalUnit unit)
OffsetDateTime
с усеченным временем. Усечение возвращает копию оригинала, разового датой с полями, меньшими чем указанный обнуленный модуль. Например, усечение с minutes
модуль обнулит второе-минутного и nano-of-second поле.
У модуля должна быть продолжительность, которая делится на продолжительность стандартного дня без остатка. Это включает все предоставленные единицы измерения времени на ChronoUnit
и DAYS
. Другие модули выдают исключение.
Смещение не влияет на вычисление и будет тем же самым в результате.
Этот экземпляр является неизменным и незатронутым этим вызовом метода.
unit
- модуль, чтобы усечь к, не нульOffsetDateTime
основанный на этом разовом датой с усеченным временем, не нулевойDateTimeException
- если неспособный усекатьUnsupportedTemporalTypeException
- если модуль не поддерживаетсяpublic OffsetDateTime plus(TemporalAmount amountToAdd)
Это возвращается OffsetDateTime
, основанный на этом, с указанным добавленным количеством. Количество обычно Period
или Duration
но может быть любой другой тип, реализовывая TemporalAmount
интерфейс.
Вычисление делегируется к объекту количества, вызывая TemporalAmount.addTo(Temporal)
. Реализация количества свободна реализовать дополнение всегда, это желает, однако это обычно перезванивает к plus(long, TemporalUnit)
. Консультируйтесь с документацией реализации количества, чтобы определить, может ли это быть успешно добавлено.
Этот экземпляр является неизменным и незатронутым этим вызовом метода.
plus
в интерфейсе Temporal
amountToAdd
- количество, чтобы добавить, не нульOffsetDateTime
основанный на этом разовом датой со сделанным дополнением, не нульDateTimeException
- если дополнение не может быть сделаноArithmeticException
- если числовое переполнение происходитpublic OffsetDateTime plus(long amountToAdd, TemporalUnit unit)
Это возвращается OffsetDateTime
, основанный на этом, с количеством с точки зрения модуля добавил. Если не возможно добавить количество, потому что модуль не поддерживается или по некоторой другой причине, исключение выдается.
Если поле является a ChronoUnit
тогда дополнение реализуется LocalDateTime.plus(long, TemporalUnit)
. Смещение не является частью вычисления и будет неизменно в результате.
Если поле не является a ChronoUnit
, тогда результат этого метода получается, вызывая TemporalUnit.addTo(Temporal, long)
передача this
как параметр. В этом случае модуль определяет, ли и как выполнить дополнение.
Этот экземпляр является неизменным и незатронутым этим вызовом метода.
plus
в интерфейсе Temporal
amountToAdd
- количество модуля, чтобы добавить к результату, может быть отрицательнымunit
- модуль количества, чтобы добавить, не нульOffsetDateTime
основанный на этом разовом датой с указанным количеством добавил, не нульDateTimeException
- если дополнение не может быть сделаноUnsupportedTemporalTypeException
- если модуль не поддерживаетсяArithmeticException
- если числовое переполнение происходитpublic OffsetDateTime plusYears(long years)
OffsetDateTime
с установленным периодом в добавленных годах. Этот метод добавляет указанное количество к полю лет в трех шагах:
Например, 29.02.2008 (високосный год) плюс один год привел бы к недопустимой дате 29.02.2009 (стандартный год). Вместо того, чтобы возвратить недопустимый результат, прошлый допустимый день месяца, 28.02.2009, выбирается вместо этого.
Этот экземпляр является неизменным и незатронутым этим вызовом метода.
years
- годы, чтобы добавить, может быть отрицательнымOffsetDateTime
основанный на этом разовом датой с годами добавил, не нульDateTimeException
- если результат превышает поддерживаемый диапазон датpublic OffsetDateTime plusMonths(long months)
OffsetDateTime
с установленным периодом в добавленных месяцах. Этот метод добавляет указанное количество к полю месяцев в трех шагах:
Например, 31.03.2007 плюс один месяц привел бы к недопустимой дате 31.04.2007. Вместо того, чтобы возвратить недопустимый результат, прошлый допустимый день месяца, 30.04.2007, выбирается вместо этого.
Этот экземпляр является неизменным и незатронутым этим вызовом метода.
months
- месяцы, чтобы добавить, может быть отрицательнымOffsetDateTime
основанный на этом разовом датой с месяцами добавил, не нульDateTimeException
- если результат превышает поддерживаемый диапазон датpublic OffsetDateTime plusWeeks(long weeks)
Этот метод добавляет указанное количество в неделях к дневному полю, постепенно увеличивающему поля месяца и года по мере необходимости, чтобы гарантировать, что результат остается допустимым. Результат только недопустим, если максимальный/минимальный год превышается.
Например, 31.12.2008 плюс одна неделя привел бы к 07.01.2009.
Этот экземпляр является неизменным и незатронутым этим вызовом метода.
weeks
- недели, чтобы добавить, может быть отрицательнымOffsetDateTime
основанный на этом разовом датой с неделями добавил, не нульDateTimeException
- если результат превышает поддерживаемый диапазон датpublic OffsetDateTime plusDays(long days)
Этот метод добавляет указанное количество к дневному полю, постепенно увеличивающему поля месяца и года по мере необходимости, чтобы гарантировать, что результат остается допустимым. Результат только недопустим, если максимальный/минимальный год превышается.
Например, 31.12.2008 плюс один день привел бы к 01.01.2009.
Этот экземпляр является неизменным и незатронутым этим вызовом метода.
days
- дни, чтобы добавить, может быть отрицательнымOffsetDateTime
основанный на этом разовом датой со днями добавил, не нульDateTimeException
- если результат превышает поддерживаемый диапазон датpublic OffsetDateTime plusHours(long hours)
OffsetDateTime
с установленным периодом в добавленных часах. Этот экземпляр является неизменным и незатронутым этим вызовом метода.
hours
- часы, чтобы добавить, может быть отрицательнымOffsetDateTime
основанный на этом разовом датой с часами добавил, не нульDateTimeException
- если результат превышает поддерживаемый диапазон датpublic OffsetDateTime plusMinutes(long minutes)
OffsetDateTime
с установленным периодом в добавленных минутах. Этот экземпляр является неизменным и незатронутым этим вызовом метода.
minutes
- минуты, чтобы добавить, может быть отрицательнымOffsetDateTime
основанный на этом разовом датой с минутами добавил, не нульDateTimeException
- если результат превышает поддерживаемый диапазон датpublic OffsetDateTime plusSeconds(long seconds)
OffsetDateTime
с установленным периодом в добавленных секундах. Этот экземпляр является неизменным и незатронутым этим вызовом метода.
seconds
- секунды, чтобы добавить, может быть отрицательнымOffsetDateTime
основанный на этом разовом датой с секундами добавил, не нульDateTimeException
- если результат превышает поддерживаемый диапазон датpublic OffsetDateTime plusNanos(long nanos)
OffsetDateTime
с установленным периодом в добавленных наносекундах. Этот экземпляр является неизменным и незатронутым этим вызовом метода.
nanos
- nanos, чтобы добавить, может быть отрицательнымOffsetDateTime
основанный на этом разовом датой с наносекундами добавил, не нульDateTimeException
- если модуль не может быть добавлен к этому типуpublic OffsetDateTime minus(TemporalAmount amountToSubtract)
Это возвращается OffsetDateTime
, основанный на этом, с указанным вычтенным количеством. Количество обычно Period
или Duration
но может быть любой другой тип, реализовывая TemporalAmount
интерфейс.
Вычисление делегируется к объекту количества, вызывая TemporalAmount.subtractFrom(Temporal)
. Реализация количества свободна реализовать вычитание всегда, это желает, однако это обычно перезванивает к minus(long, TemporalUnit)
. Консультируйтесь с документацией реализации количества, чтобы определить, может ли это быть успешно вычтено.
Этот экземпляр является неизменным и незатронутым этим вызовом метода.
minus
в интерфейсе Temporal
amountToSubtract
- количество, чтобы вычесть, не нульOffsetDateTime
основанный на этом разовом датой со сделанным вычитанием, не нульDateTimeException
- если вычитание не может быть сделаноArithmeticException
- если числовое переполнение происходитpublic OffsetDateTime minus(long amountToSubtract, TemporalUnit unit)
Это возвращается OffsetDateTime
, основанный на этом, с количеством с точки зрения модуля вычитается. Если не возможно вычесть количество, потому что модуль не поддерживается или по некоторой другой причине, исключение выдается.
Этот метод эквивалентен plus(long, TemporalUnit)
с отрицаемым количеством. См., что метод для полного описания того, как дополнение, и таким образом вычитание, работают.
Этот экземпляр является неизменным и незатронутым этим вызовом метода.
minus
в интерфейсе Temporal
amountToSubtract
- количество модуля, чтобы вычесть из результата, может быть отрицательнымunit
- модуль количества, чтобы вычесть, не нульOffsetDateTime
основанный на этом разовом датой с указанным вычтенным количеством, не нульDateTimeException
- если вычитание не может быть сделаноUnsupportedTemporalTypeException
- если модуль не поддерживаетсяArithmeticException
- если числовое переполнение происходитpublic OffsetDateTime minusYears(long years)
OffsetDateTime
с установленным периодом в вычтенных годах. Этот метод вычитает указанное количество из поля лет в трех шагах:
Например, 29.02.2008 (високосный год) минус один год привел бы к недопустимой дате 29.02.2009 (стандартный год). Вместо того, чтобы возвратить недопустимый результат, прошлый допустимый день месяца, 28.02.2009, выбирается вместо этого.
Этот экземпляр является неизменным и незатронутым этим вызовом метода.
years
- годы, чтобы вычесть, может быть отрицательнымOffsetDateTime
основанный на этом разовом датой с вычтенными годами, не нульDateTimeException
- если результат превышает поддерживаемый диапазон датpublic OffsetDateTime minusMonths(long months)
OffsetDateTime
с установленным периодом в вычтенных месяцах. Этот метод вычитает указанное количество из поля месяцев в трех шагах:
Например, 31.03.2007 минус один месяц привел бы к недопустимой дате 31.04.2007. Вместо того, чтобы возвратить недопустимый результат, прошлый допустимый день месяца, 30.04.2007, выбирается вместо этого.
Этот экземпляр является неизменным и незатронутым этим вызовом метода.
months
- месяцы, чтобы вычесть, может быть отрицательнымOffsetDateTime
основанный на этом разовом датой с вычтенными месяцами, не нульDateTimeException
- если результат превышает поддерживаемый диапазон датpublic OffsetDateTime minusWeeks(long weeks)
OffsetDateTime
с установленным периодом в вычтенных неделях. Этот метод вычитает указанное количество в неделях от дневного поля, постепенно уменьшающего поля месяца и года по мере необходимости, чтобы гарантировать, что результат остается допустимым. Результат только недопустим, если максимальный/минимальный год превышается.
Например, 31.12.2008 минус одна неделя привел бы к 07.01.2009.
Этот экземпляр является неизменным и незатронутым этим вызовом метода.
weeks
- недели, чтобы вычесть, может быть отрицательнымOffsetDateTime
основанный на этом разовом датой с вычтенными неделями, не нульDateTimeException
- если результат превышает поддерживаемый диапазон датpublic OffsetDateTime minusDays(long days)
OffsetDateTime
с установленным периодом в вычтенных днях. Этот метод вычитает указанное количество из дневного поля, постепенно увеличивающего поля месяца и года по мере необходимости, чтобы гарантировать, что результат остается допустимым. Результат только недопустим, если максимальный/минимальный год превышается.
Например, 31.12.2008 минус один день привел бы к 01.01.2009.
Этот экземпляр является неизменным и незатронутым этим вызовом метода.
days
- дни, чтобы вычесть, может быть отрицательнымOffsetDateTime
основанный на этом разовом датой с вычтенными днями, не нульDateTimeException
- если результат превышает поддерживаемый диапазон датpublic OffsetDateTime minusHours(long hours)
OffsetDateTime
с установленным периодом в вычтенных часах. Этот экземпляр является неизменным и незатронутым этим вызовом метода.
hours
- часы, чтобы вычесть, может быть отрицательнымOffsetDateTime
основанный на этом разовом датой с вычтенными часами, не нульDateTimeException
- если результат превышает поддерживаемый диапазон датpublic OffsetDateTime minusMinutes(long minutes)
OffsetDateTime
с установленным периодом в вычтенных минутах. Этот экземпляр является неизменным и незатронутым этим вызовом метода.
minutes
- минуты, чтобы вычесть, может быть отрицательнымOffsetDateTime
основанный на этом разовом датой с вычтенными минутами, не нульDateTimeException
- если результат превышает поддерживаемый диапазон датpublic OffsetDateTime minusSeconds(long seconds)
OffsetDateTime
с установленным периодом в вычтенных секундах. Этот экземпляр является неизменным и незатронутым этим вызовом метода.
seconds
- секунды, чтобы вычесть, может быть отрицательнымOffsetDateTime
основанный на этом разовом датой с вычтенными секундами, не нульDateTimeException
- если результат превышает поддерживаемый диапазон датpublic OffsetDateTime minusNanos(long nanos)
OffsetDateTime
с установленным периодом в вычтенных наносекундах. Этот экземпляр является неизменным и незатронутым этим вызовом метода.
nanos
- nanos, чтобы вычесть, может быть отрицательнымOffsetDateTime
основанный на этом разовом датой с вычтенными наносекундами, не нульDateTimeException
- если результат превышает поддерживаемый диапазон датpublic <R> R query(TemporalQuery<R> query)
Это запрашивает это разовое датой использование указанного объекта стратегии запроса. TemporalQuery
объект определяет логику, которая будет использоваться, чтобы получить результат. Считайте документацию запроса, чтобы понять, каков результат этого метода будет.
Результат этого метода получается, вызывая TemporalQuery.queryFrom(TemporalAccessor)
метод на указанной передаче запроса this
как параметр.
query
в интерфейсе TemporalAccessor
R
- тип результатаquery
- запрос, чтобы вызвать, не нульDateTimeException
- если неспособный запрашивать (определенный запросом)ArithmeticException
- если числовое переполнение происходит (определенный запросом)public Temporal adjustInto(Temporal temporal)
Это возвращает временный объект того же самого заметного типа как ввод со смещением, датой и время, измененное, чтобы быть тем же самым как этим.
Корректировка эквивалентна использованию Temporal.with(TemporalField, long)
три раза, передавая ChronoField.EPOCH_DAY
, ChronoField.NANO_OF_DAY
и ChronoField.OFFSET_SECONDS
как поля.
В большинстве случаев это является более четким, чтобы инвертировать образец вызова при использовании Temporal.with(TemporalAdjuster)
:
// these two lines are equivalent, but the second approach is recommended temporal = thisOffsetDateTime.adjustInto(temporal); temporal = temporal.with(thisOffsetDateTime);
Этот экземпляр является неизменным и незатронутым этим вызовом метода.
adjustInto
в интерфейсе TemporalAdjuster
temporal
- целевой объект, который будет скорректирован, не нульDateTimeException
- если неспособный вносить корректировкуArithmeticException
- если числовое переполнение происходитpublic long periodUntil(Temporal endDateTime, TemporalUnit unit)
Это вычисляет количество времени между два OffsetDateTime
объекты с точки зрения сингла TemporalUnit
. Запуск и конечные точки this
и указанное разовое датой. Результат будет отрицателен, если конец будет перед запуском. Например, период в днях между двумя разами может быть вычислен, используя startDateTime.periodUntil(endDateTime, DAYS)
.
Temporal
переданный к этому методу должен быть OffsetDateTime
. Если смещение отличается между этими двумя разами, указанное разовое датой окончания нормализуется, чтобы иметь то же самое смещение как это разовое датой.
Вычисление возвращает целое число, представляя число полных модулей между этими двумя разами. Например, период в месяцах между 2012-06-15T00:00Z и 2012-08-14T23:59Z только будет одним месяцем, поскольку это - одна минута за исключением двух месяцев.
Есть два эквивалентных способа использовать этот метод. Первое должно вызвать этот метод. Второе должно использовать TemporalUnit.between(Temporal, Temporal)
:
// these two lines are equivalent amount = start.periodUntil(end, MONTHS); amount = MONTHS.between(start, end);Выбор должен быть сделан основанный, которого делает код более читаемым.
Вычисление реализуется в этом методе для ChronoUnit
. Модули NANOS
, MICROS
, MILLIS
, SECONDS
, MINUTES
, HOURS
и HALF_DAYS
, DAYS
, WEEKS
, MONTHS
, YEARS
, DECADES
, CENTURIES
, MILLENNIA
и ERAS
поддерживаются. Другой ChronoUnit
значения выдадут исключение.
Если модуль не является a ChronoUnit
, тогда результат этого метода получается, вызывая TemporalUnit.between(Temporal, Temporal)
передача this
как первый параметр и ввод, временный как второй параметр.
Этот экземпляр является неизменным и незатронутым этим вызовом метода.
periodUntil
в интерфейсе Temporal
endDateTime
- разовое датой окончания, которое должно быть OffsetDateTime
, не нульunit
- модуль, чтобы измерить количество в, не нульDateTimeException
- если количество не может быть вычисленоUnsupportedTemporalTypeException
- если модуль не поддерживаетсяArithmeticException
- если числовое переполнение происходитpublic String format(DateTimeFormatter formatter)
Это разовое датой передадут к средству форматирования, чтобы произвести строку.
formatter
- средство форматирования, чтобы использовать, не нульDateTimeException
- если ошибка происходит во время печатиpublic ZonedDateTime atZoneSameInstant(ZoneId zone)
ZonedDateTime
обеспечение, что у результата есть тот же самый момент. Это возвращает a ZonedDateTime
сформированный из этого разового датой и указанный часовой пояс. Это преобразование будет игнорировать видимую разовую датой локальную переменную и использовать базовый момент вместо этого. Это избегает любых проблем с локальными разрывами временной шкалы или перекрытиями. У результата могли бы быть различные значения для полей, таких как час, минута даже день.
Чтобы попытаться сохранить значения полей, использовать atZoneSimilarLocal(ZoneId)
. Чтобы использовать смещение в качестве зонального ID, использовать toZonedDateTime()
.
zone
- часовой пояс, чтобы использовать, не нульpublic ZonedDateTime atZoneSimilarLocal(ZoneId zone)
ZonedDateTime
попытка сохранить ту же самую локальную дату и время. Это возвращает a ZonedDateTime
сформированный из этого разового датой и указанный часовой пояс. Где только возможно у результата будет та же самая локальная переменная разовой датой как этот объект.
Правила часового пояса, такие как переход на летнее время, означают, что не каждый раз на локальной временной шкале существует. Если разовая датой локальная переменная находится в разрыве или перекрытии согласно правилам тогда, преобразователь используется, чтобы определить результирующее местное время и сместить. Этот метод использование ZonedDateTime.ofLocal(LocalDateTime, ZoneId, ZoneOffset)
сохранить смещение от этого экземпляра если возможный.
Более прекрасное управление разрывами и перекрытиями доступно двумя способами. Если Вы просто хотите использовать более позднее смещение в перекрытиях, тогда вызывают ZonedDateTime.withLaterOffsetAtOverlap()
сразу после этого метода.
Чтобы создать зонное разовое датой в тот же самый момент независимо от локальной временной шкалы, использовать atZoneSameInstant(ZoneId)
. Чтобы использовать смещение в качестве зонального ID, использовать toZonedDateTime()
.
zone
- часовой пояс, чтобы использовать, не нульpublic OffsetTime toOffsetTime()
OffsetTime
. Это возвращает время смещения с тем же самым местным временем и смещением.
public ZonedDateTime toZonedDateTime()
ZonedDateTime
использование смещения как зональный ID. Это создает самое простое ZonedDateTime
использование смещения как зональный ID.
Чтобы управлять используемым часовым поясом, см. atZoneSameInstant(ZoneId)
и atZoneSimilarLocal(ZoneId)
.
public Instant toInstant()
Instant
. Это возвращается Instant
представление той же самой точки на временной шкале как это разовое датой.
Instant
представление того же самого момента, не нуляpublic long toEpochSecond()
Это позволяет этому разовому датой быть преобразованным в значение epoch-seconds
поле. Это прежде всего предназначается для низкоуровневых преобразований, а не общего использования приложения.
public int compareTo(OffsetDateTime other)
OffsetDateTime
другому разовому датой. Сравнение базируется тотчас тогда на разовой датой локальной переменной. Это является "непротиворечивым с, равняется", как определено Comparable
.
Например, следующее является порядком компаратора:
2008-12-03T10:30+01:00
2008-12-03T11:00+01:00
2008-12-03T12:00+02:00
2008-12-03T11:30+01:00
2008-12-03T12:00+01:00
2008-12-03T12:30+01:00
equals()
.compareTo
в интерфейсе Comparable<OffsetDateTime>
other
- другое разовое датой, чтобы сравнить с, не нульpublic boolean isAfter(OffsetDateTime other)
Этот метод отличается от сравнения в compareTo(java.time.OffsetDateTime)
и equals(java.lang.Object)
в этом это только сравнивает момент разового датой. Это эквивалентно использованию dateTime1.toInstant().isAfter(dateTime2.toInstant());
.
other
- другое разовое датой, чтобы сравнить с, не нульpublic boolean isBefore(OffsetDateTime other)
Этот метод отличается от сравнения в compareTo(java.time.OffsetDateTime)
в этом это только сравнивает момент разового датой. Это эквивалентно использованию dateTime1.toInstant().isBefore(dateTime2.toInstant());
.
other
- другое разовое датой, чтобы сравнить с, не нульpublic boolean isEqual(OffsetDateTime other)
Этот метод отличается от сравнения в compareTo(java.time.OffsetDateTime)
и equals(java.lang.Object)
в этом это только сравнивает момент разового датой. Это эквивалентно использованию dateTime1.toInstant().equals(dateTime2.toInstant());
.
other
- другое разовое датой, чтобы сравнить с, не нульpublic boolean equals(Object obj)
Сравнение основано на разовой датой локальной переменной и смещение. Чтобы сравниться в течение того же самого момента на временной шкале, использовать isEqual(java.time.OffsetDateTime)
. Только объекты типа OffsetDateTime
сравниваются, другие типы возвращают false.
equals
в class Object
obj
- объект проверить, обнулите, возвращает falseObject.hashCode()
, HashMap
public int hashCode()
hashCode
в class Object
Object.equals(java.lang.Object)
, System.identityHashCode(java.lang.Object)
public String toString()
String
, такой как 2007-12-03T10:15:30+01:00
. Вывод будет одним из следующих форматов ISO 8601:
uuuu-MM-dd'T'HH:mmXXXXX
uuuu-MM-dd'T'HH:mm:ssXXXXX
uuuu-MM-dd'T'HH:mm:ss.SSSXXXXX
uuuu-MM-dd'T'HH:mm:ss.SSSSSSXXXXX
uuuu-MM-dd'T'HH:mm:ss.SSSSSSSSSXXXXX
Используемый формат будет самым коротким, который выводит полную стоимость времени, где опущенные части подразумеваются, чтобы быть нулем.
Для дальнейшей ссылки API и документации разработчика, см. Java Документация SE. Та документация содержит более подробные, предназначенные разработчиком описания, с концептуальными краткими обзорами, определениями сроков, обходных решений, и рабочих примеров кода.
Авторское право © 1993, 2013, Oracle и/или его филиалы. Все права защищены.
Проект сборка-b92