Класс LocalDateTime
- java.lang.Object
-
- java.time.LocalDateTime
- Все реализованные интерфейсы:
- Serializable, Comparable<ChronoLocalDateTime<?>>, ChronoLocalDateTime<LocalDate>, Temporal, TemporalAccessor, TemporalAdjuster
public final class LocalDateTime extends Object implements Temporal, TemporalAdjuster, ChronoLocalDateTime<LocalDate>, Serializable
Дата-время без часового пояса в системе календаря ISO-8601, например 2007-12-03T10:15:30.
LocalDateTime — это неизменяемый объект дата-время, представляющий дату-время, часто отображаемый как год-месяц-день-час-минута-секунда. Также можно получить доступ к другим полям даты и времени, таким как день года, день недели и неделя года. Время представлено с точностью до наносекунды. Например, значение "2 октября 2007 года в 13:45:30.123456789" может быть сохранено в LocalDateTime.
Этот класс не хранит и не представляет часовой пояс. Вместо этого он описывает дату, как используется для дней рождения, в сочетании с местным временем, как отображается на часах. Он не может представлять момент времени на временной шкале без дополнительной информации, такой как смещение или часовой пояс.
Система календаря ISO-8601 — это современная гражданская система календаря, используемая сегодня в большинстве стран мира. Она эквивалентна пролептической григорианской системе календаря, в которой сегодняшние правила високосных лет применяются для всех времен. Для большинства современных приложений правила ISO-8601 полностью подходят. Однако любые приложения, использующие исторические даты и требующие их точности, обнаружат, что подход ISO-8601 не подходит.
Это значимый класс; использование операций, чувствительных к идентичности (включая равенство ссылок (==), хэш-код идентичности или синхронизацию) для экземпляров LocalDateTime может привести к непредсказуемым результатам и должно быть избегаемо. Для сравнения следует использовать метод equals.
- Требования к реализации:
- Этот класс неизменяемый и потокобезопасный.
- С:
- 1.8
- См. также:
- Сериализованная форма
Поля
| Модификатор и тип | Поле и описание |
|---|---|
static LocalDateTime |
MAX Максимальная поддерживаемая |
static LocalDateTime |
MIN Минимальная поддерживаемая |
Методы
| Модификатор и тип | Метод и описание |
|---|---|
Temporal |
adjustInto(Temporal temporal) Настраивает указанный временной объект, чтобы он имел ту же дату и время, что и этот объект. |
OffsetDateTime |
atOffset(ZoneOffset offset) Объединяет это время с офсетом, чтобы создать |
ZonedDateTime |
atZone(ZoneId zone) Объединяет это время с часовым поясом, чтобы создать |
int |
compareTo(ChronoLocalDateTime<?> other) Сравнивает это время с другим временем. |
boolean |
equals(Object obj) Проверяет, равно ли это время другому времени. |
String |
format(DateTimeFormatter formatter) Форматирует это время с помощью указанного форматера. |
static LocalDateTime |
from(TemporalAccessor temporal) Получает экземпляр |
int |
get(TemporalField field) Получает значение указанного поля из этого времени как |
int |
getDayOfMonth() Получает поле дня месяца. |
DayOfWeek |
getDayOfWeek() Получает поле дня недели, которое является перечислением |
int |
getDayOfYear() Получает поле порядкового номера дня. |
int |
getHour() Получает поле часа суток. |
long |
getLong(TemporalField field) Получает значение указанного поля из этого времени как |
int |
getMinute() Получает поле минуты часа. |
Month |
getMonth() Получает поле месяца года, используя перечисление |
int |
getMonthValue() Получает поле месяца года от 1 до 12. |
int |
getNano() Получает поле наносекунд. |
int |
getSecond() Получает поле секунды минуты. |
int |
getYear() Получает поле года. |
int |
hashCode() Хеш-код для этого времени. |
boolean |
isAfter(ChronoLocalDateTime<?> other) Проверяет, предшествует ли это время указанному времени. |
boolean |
isBefore(ChronoLocalDateTime<?> other) Проверяет, следует ли это время за указанным временем. |
boolean |
isEqual(ChronoLocalDateTime<?> other) Проверяет, равно ли это время указанному времени. |
boolean |
isSupported(TemporalField field) Проверяет, поддерживается ли указанное поле. |
boolean |
isSupported(TemporalUnit unit) Проверяет, поддерживается ли указанный единицу. |
LocalDateTime |
minus(long amountToSubtract,
TemporalUnit unit) Возвращает копию этого времени, от которой вычтена указанная величина. |
LocalDateTime |
minus(TemporalAmount amountToSubtract) Возвращает копию этого времени, от которой вычтена указанная величина. |
LocalDateTime |
minusDays(long days) Возвращает копию этого |
LocalDateTime |
minusHours(long hours) Возвращает копию этого |
LocalDateTime |
minusMinutes(long minutes) Возвращает копию этого |
LocalDateTime |
minusMonths(long months) Возвращает копию этого |
LocalDateTime |
minusNanos(long nanos) Возвращает копию этого |
LocalDateTime |
minusSeconds(long seconds) Возвращает копию этого |
LocalDateTime |
minusWeeks(long weeks) Возвращает копию этого |
LocalDateTime |
minusYears(long years) Возвращает копию этого |
static LocalDateTime |
now() Получает текущее время с системных часов в стандартном часовом поясе. |
static LocalDateTime |
now(Clock clock) Получает текущее время с указанных часов. |
static LocalDateTime |
now(ZoneId zone) Получает текущее время с системных часов в указанном часовом поясе. |
static LocalDateTime |
of(int year,
int month,
int dayOfMonth,
int hour,
int minute) Получает экземпляр |
static LocalDateTime |
of(int year,
int month,
int dayOfMonth,
int hour,
int minute,
int second) Получает экземпляр |
static LocalDateTime |
of(int year,
int month,
int dayOfMonth,
int hour,
int minute,
int second,
int nanoOfSecond) Получает экземпляр |
static LocalDateTime |
of(int year,
Month month,
int dayOfMonth,
int hour,
int minute) Получает экземпляр |
static LocalDateTime |
of(int year,
Month month,
int dayOfMonth,
int hour,
int minute,
int second) Получает экземпляр |
static LocalDateTime |
of(int year,
Month month,
int dayOfMonth,
int hour,
int minute,
int second,
int nanoOfSecond) Получает экземпляр |
static LocalDateTime |
of(LocalDate date,
LocalTime time) Получает экземпляр |
static LocalDateTime |
ofEpochSecond(long epochSecond,
int nanoOfSecond,
ZoneOffset offset) Получает экземпляр |
static LocalDateTime |
ofInstant(Instant instant,
ZoneId zone) Получает экземпляр |
static LocalDateTime |
parse(CharSequence text) Получает экземпляр |
static LocalDateTime |
parse(CharSequence text,
DateTimeFormatter formatter) Получает экземпляр |
LocalDateTime |
plus(long amountToAdd,
TemporalUnit unit) Возвращает копию этого времени, к которому добавлена указанная величина. |
LocalDateTime |
plus(TemporalAmount amountToAdd) Возвращает копию этого времени, к которому добавлена указанная величина. |
LocalDateTime |
plusDays(long days) Возвращает копию этого |
LocalDateTime |
plusHours(long hours) Возвращает копию этого |
LocalDateTime |
plusMinutes(long minutes) Возвращает копию этого |
LocalDateTime |
plusMonths(long months) Возвращает копию этого |
LocalDateTime |
plusNanos(long nanos) Возвращает копию этого |
LocalDateTime |
plusSeconds(long seconds) Возвращает копию этого |
LocalDateTime |
plusWeeks(long weeks) Возвращает копию этого |
LocalDateTime |
plusYears(long years) Возвращает копию этого |
<R> R |
query(TemporalQuery<R> query) Обрабатывает это время с помощью указанного запроса. |
ValueRange |
range(TemporalField field) Получает диапазон допустимых значений для указанного поля. |
LocalDate |
toLocalDate() Получает часть |
LocalTime |
toLocalTime() Получает часть |
String |
toString() Выводит это время в виде |
LocalDateTime |
truncatedTo(TemporalUnit unit) Возвращает копию этого |
long |
until(Temporal endExclusive,
TemporalUnit unit) Вычисляет количество времени до другого времени в терминах указанной единицы. |
LocalDateTime |
with(TemporalAdjuster adjuster) Возвращает скорректированную копию этого времени. |
LocalDateTime |
with(TemporalField field,
long newValue) Возвращает копию этой даты и времени с указанным полем, установленным в новое значение. |
LocalDateTime |
withDayOfMonth(int dayOfMonth) Возвращает копию этого |
LocalDateTime |
withDayOfYear(int dayOfYear) Возвращает копию этого |
LocalDateTime |
withHour(int hour) Возвращает копию этого |
LocalDateTime |
withMinute(int minute) Возвращает копию этого |
LocalDateTime |
withMonth(int month) Возвращает копию этого |
LocalDateTime |
withNano(int nanoOfSecond) Возвращает копию этого |
LocalDateTime |
withSecond(int second) Возвращает копию этого |
LocalDateTime |
withYear(int year) Возвращает копию этого |
Методы, унаследованные от класса java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait Методы, унаследованные от интерфейса java.time.chrono.ChronoLocalDateTime
getChronology, timeLineOrder, toEpochSecond, toInstant Поля
MIN
public static final LocalDateTime MIN
Минимальная поддерживаемая LocalDateTime, '-999999999-01-01T00:00:00'. Это локальное время полуночи в начале минимальной даты. Это сочетает в себе LocalDate.MIN и LocalTime.MIN. Это может использоваться приложением в качестве даты-времени «далёкого прошлого».
MAX
public static final LocalDateTime MAX
Максимальная поддерживаемая LocalDateTime, '+999999999-12-31T23:59:59.999999999'. Это локальное время непосредственно перед полуночью в конце максимальной даты. Это сочетает в себе LocalDate.MAX и LocalTime.MAX. Это может использоваться приложением в качестве даты-времени «далёкого будущего».
Методы
now
public static LocalDateTime now()
Получает текущую дату и время из системных часов в часовом поясе по умолчанию.
Это запросит system clock в часовом поясе по умолчанию, чтобы получить текущую дату и время.
Использование этого метода предотвратит возможность использования альтернативных часов для тестирования, поскольку часы жёстко закодированы.
- Возвращает:
- текущую дату и время с использованием системных часов и часового пояса по умолчанию, не null
now
public static LocalDateTime now(ZoneId zone)
Получает текущую дату и время из системных часов в указанном часовом поясе.
Это запросит system clock, чтобы получить текущую дату и время. Указание часового пояса позволяет избежать зависимости от часового пояса по умолчанию.
Использование этого метода предотвратит возможность использования альтернативных часов для тестирования, поскольку часы жёстко закодированы.
- Параметры:
-
zone- идентификатор зоны, который необходимо использовать, не null - Возвращает:
- текущую дату и время с использованием системных часов, не null
now
public static LocalDateTime now(Clock clock)
Получает текущую дату и время из указанных часов.
Это запросит указанные часы, чтобы получить текущую дату и время. Использование этого метода позволяет использовать альтернативные часы для тестирования. Альтернативные часы могут быть введены с помощью dependency injection.
- Параметры:
-
clock- часы, которые необходимо использовать, не null - Возвращает:
- текущую дату и время, не null
of
public static LocalDateTime of(int year,
Month month,
int dayOfMonth,
int hour,
int minute) Получает экземпляр LocalDateTime из года, месяца, дня, часа и минуты, устанавливая секунды и наносекунды в ноль.
Это возвращает LocalDateTime с указанным годом, месяцем, днём месяца, часом и минутой. День должен быть допустимым для года и месяца, иначе будет выброшено исключение. Поля секунд и наносекунд будут установлены в ноль.
- Параметры:
-
year- год, который необходимо представить, от MIN_YEAR до MAX_YEAR -
month- месяц года, который необходимо представить, не null -
dayOfMonth- день месяца, который необходимо представить, от 1 до 31 -
hour- час дня, который необходимо представить, от 0 до 23 -
minute- минута часа, которую необходимо представить, от 0 до 59 - Возвращает:
- локальную дату и время, не null
- Выбрасывает:
-
DateTimeException- если значение любого поля выходит за пределы диапазона, или если день месяца недействителен для месяца-года
of
public static LocalDateTime of(int year,
Month month,
int dayOfMonth,
int hour,
int minute,
int second) Получает экземпляр LocalDateTime из года, месяца, дня, часа, минуты и секунды, устанавливая наносекунды в ноль.
Это возвращает LocalDateTime с указанным годом, месяцем, днём месяца, часом, минутой и секундой. День должен быть допустимым для года и месяца, иначе будет выброшено исключение. Поле наносекунд будет установлено в ноль.
- Параметры:
-
year- год, который необходимо представить, от MIN_YEAR до MAX_YEAR -
month- месяц года, который необходимо представить, не null -
dayOfMonth- день месяца, который необходимо представить, от 1 до 31 -
hour- час дня, который необходимо представить, от 0 до 23 -
minute- минута часа, которую необходимо представить, от 0 до 59 -
second- секунда минуты, которую необходимо представить, от 0 до 59 - Возвращает:
- локальную дату и время, не null
- Выбрасывает:
-
DateTimeException- если значение любого поля выходит за пределы диапазона, или если день месяца недействителен для месяца-года
of
public static LocalDateTime of(int year,
Month month,
int dayOfMonth,
int hour,
int minute,
int second,
int nanoOfSecond) Получает экземпляр LocalDateTime из года, месяца, дня, часа, минуты, секунды и наносекунд.
Это возвращает LocalDateTime с указанным годом, месяцем, днём месяца, часом, минутой, секундой и наносекундой. День должен быть допустимым для года и месяца, иначе будет выброшено исключение.
- Параметры:
-
year- год, который необходимо представить, от MIN_YEAR до MAX_YEAR -
month- месяц года, который необходимо представить, не null -
dayOfMonth- день месяца, который необходимо представить, от 1 до 31 -
hour- час дня, который необходимо представить, от 0 до 23 -
minute- минута часа, которую необходимо представить, от 0 до 59 -
second- секунда минуты, которую необходимо представить, от 0 до 59 -
nanoOfSecond- наносекунда, которую необходимо представить, от 0 до 999 999 999 - Возвращает:
- локальную дату и время, не null
- Выбрасывает:
-
DateTimeException- если значение любого поля выходит за пределы диапазона, или если день месяца недействителен для месяца-года
of
public static LocalDateTime of(int year,
int month,
int dayOfMonth,
int hour,
int minute) Получает экземпляр LocalDateTime из года, месяца, дня, часа и минуты, устанавливая секунды и наносекунды в ноль.
Это возвращает LocalDateTime с указанным годом, месяцем, днём месяца, часом и минутой. День должен быть допустимым для года и месяца, иначе будет выброшено исключение. Поля секунд и наносекунд будут установлены в ноль.
- Параметры:
-
year- год, который необходимо представить, от MIN_YEAR до MAX_YEAR -
month- месяц года, который необходимо представить, от 1 (январь) до 12 (декабрь) -
dayOfMonth- день месяца, который необходимо представить, от 1 до 31 -
hour- час дня, который необходимо представить, от 0 до 23 -
minute- минута часа, которую необходимо представить, от 0 до 59 - Возвращает:
- локальную дату и время, не null
- Выбрасывает:
-
DateTimeException- если значение любого поля выходит за пределы диапазона, или если день месяца недействителен для месяца-года
of
public static LocalDateTime of(int year,
int month,
int dayOfMonth,
int hour,
int minute,
int second) Получает экземпляр LocalDateTime из года, месяца, дня, часа, минуты и секунды, устанавливая наносекунды в ноль.
Это возвращает LocalDateTime с указанным годом, месяцем, днём месяца, часом, минутой и секундой. День должен быть допустимым для года и месяца, иначе будет выброшено исключение. Поле наносекунд будет установлено в ноль.
- Параметры:
-
year- год, который необходимо представить, от MIN_YEAR до MAX_YEAR -
month- месяц года, который необходимо представить, от 1 (январь) до 12 (декабрь) -
dayOfMonth- день месяца, который необходимо представить, от 1 до 31 -
hour- час дня, который необходимо представить, от 0 до 23 -
minute- минута часа, которую необходимо представить, от 0 до 59 -
second- секунда минуты, которую необходимо представить, от 0 до 59 - Возвращает:
- локальную дату и время, не null
- Выбрасывает:
-
DateTimeException- если значение любого поля выходит за пределы диапазона, или если день месяца недействителен для месяца-года
of
public static LocalDateTime of(int year,
int month,
int dayOfMonth,
int hour,
int minute,
int second,
int nanoOfSecond) Получает экземпляр LocalDateTime из года, месяца, дня, часа, минуты, секунды и наносекунд.
Это возвращает LocalDateTime с указанным годом, месяцем, днём месяца, часом, минутой, секундой и наносекундой. День должен быть допустимым для года и месяца, иначе будет выброшено исключение.
- Параметры:
-
year- год, который необходимо представить, от MIN_YEAR до MAX_YEAR -
month- месяц года, который необходимо представить, от 1 (январь) до 12 (декабрь) -
dayOfMonth- день месяца, который необходимо представить, от 1 до 31 -
hour- час дня, который необходимо представить, от 0 до 23 -
minute- минута часа, которую необходимо представить, от 0 до 59 -
second- секунда минуты, которую необходимо представить, от 0 до 59 -
nanoOfSecond- наносекунда, которую необходимо представить, от 0 до 999 999 999 - Возвращает:
- локальную дату и время, не null
- Выбрасывает:
-
DateTimeException- если значение любого поля выходит за пределы диапазона, или если день месяца недействителен для месяца-года
of
public static LocalDateTime of(LocalDate date,
LocalTime time) Получает экземпляр LocalDateTime из даты и времени.
- Параметры:
-
date- локальная дата, не null -
time- локальное время, не null - Возвращает:
- локальную дату и время, не null
ofInstant
public static LocalDateTime ofInstant(Instant instant,
ZoneId zone) Получает экземпляр LocalDateTime из Instant и идентификатора зоны.
Это создаёт локальную дату и время на основе указанного момента времени. Сначала смещение от UTC/Гринвича получается с использованием идентификатора зоны и момента времени, что просто, так как для каждого момента времени существует только одно допустимое смещение. Затем момент времени и смещение используются для вычисления локальной даты и времени.
- Параметры:
-
instant- момент времени, из которого необходимо создать дату и время, не null -
zone- часовой пояс, который может быть смещением, не null - Возвращает:
- локальную дату и время, не null
- Выбрасывает:
-
DateTimeException- если результат превышает поддерживаемый диапазон
ofEpochSecond
public static LocalDateTime ofEpochSecond(long epochSecond,
int nanoOfSecond,
ZoneOffset offset) Получает экземпляр LocalDateTime с использованием секунд с эпохи 1970-01-01T00:00:00Z.
Это позволяет преобразовать поле epoch-second в локальную дату и время. Это в первую очередь предназначено для низкоуровневых преобразований, а не для общего использования в приложениях.
- Параметры:
-
epochSecond- количество секунд с эпохи 1970-01-01T00:00:00Z -
nanoOfSecond- наносекунды в секунде, от 0 до 999 999 999 -
offset- смещение часового пояса, не null - Возвращает:
- локальное время, не null
- Выбрасывает:
-
DateTimeException- если результат выходит за поддерживаемый диапазон или наносекунды неверны
from
public static LocalDateTime from(TemporalAccessor temporal)
Получает экземпляр LocalDateTime из временного объекта.
Это получает локальное время на основе указанного временного объекта. TemporalAccessor представляет собой произвольный набор информации о дате и времени, которую этот фабричный метод преобразует в экземпляр LocalDateTime.
Преобразование извлекает и объединяет LocalDate и LocalTime из временного объекта. Реализации разрешается выполнять оптимизации, такие как доступ к полям, эквивалентным соответствующим объектам.
Этот метод соответствует подписи функционального интерфейса TemporalQuery, позволяя использовать его в качестве запроса с помощью ссылки на метод, LocalDateTime::from.
- Указано в:
-
fromв интерфейсеChronoLocalDateTime<LocalDate> - Параметры:
-
temporal- временной объект для преобразования, не null - Возвращает:
- локальное время, не null
- Выбрасывает:
-
DateTimeException- если невозможно выполнить преобразование вLocalDateTime - См. также:
Chronology.localDateTime(TemporalAccessor)
parse
public static LocalDateTime parse(CharSequence text)
Получает экземпляр LocalDateTime из текстовой строки, такой как 2007-12-03T10:15:30.
Строка должна представлять собой допустимое время и анализируется с помощью DateTimeFormatter.ISO_LOCAL_DATE_TIME.
- Параметры:
-
text- текст для анализа, например, "2007-12-03T10:15:30", не null - Возвращает:
- разложенное локальное время, не null
- Выбрасывает:
-
DateTimeParseException- если текст не может быть проанализирован
parse
public static LocalDateTime parse(CharSequence text,
DateTimeFormatter formatter) Получает экземпляр LocalDateTime из текстовой строки с использованием определённого форматера.
Текст анализируется с помощью форматера, возвращая дату и время.
- Параметры:
-
text- текст для анализа, не null -
formatter- используемый форматер, не null - Возвращает:
- разложенное локальное время, не null
- Выбрасывает:
-
DateTimeParseException- если текст не может быть проанализирован
isSupported
public boolean isSupported(TemporalField field)
Проверяет, поддерживается ли указанное поле.
Проверяет, можно ли запросить у этого времени указанное поле. Если false, вызов методов range, get и with(TemporalField, long) вызовет исключение.
Если поле является 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
ChronoField вернут false. Если поле не является ChronoField, результат этого метода получается путем вызова TemporalField.isSupportedBy(TemporalAccessor), передав this в качестве аргумента. Поддерживается ли поле, определяется полем.
- Указано в:
-
isSupportedв интерфейсеChronoLocalDateTime<LocalDate> - Указано в:
-
isSupportedв интерфейсеTemporalAccessor - Параметры:
-
field- поле для проверки, null возвращает false - Возвращает:
- true, если поле поддерживается в этом времени, false — если нет
isSupported
public boolean isSupported(TemporalUnit unit)
Проверяет, поддерживается ли указанный интервал.
Проверяет, может ли данный интервал быть добавлен к или вычтен из этого времени. Если false, вызов методов plus(long, TemporalUnit) и minus вызовет исключение.
Если интервал является ChronoUnit, то запрос выполняется здесь. Поддерживаемые интервалы:
-
NANOS -
MICROS -
MILLIS -
SECONDS -
MINUTES -
HOURS -
HALF_DAYS -
DAYS -
WEEKS -
MONTHS -
YEARS -
DECADES -
CENTURIES -
MILLENNIA -
ERAS
ChronoUnit вернут false. Если интервал не является ChronoUnit, результат этого метода получается путем вызова TemporalUnit.isSupportedBy(Temporal), передав this в качестве аргумента. Поддерживается ли интервал, определяется им.
- Указано в:
-
isSupportedв интерфейсеChronoLocalDateTime<LocalDate> - Указано в:
-
isSupportedв интерфейсеTemporal - Параметры:
-
unit- интервал для проверки, null возвращает false - Возвращает:
- true, если интервал может быть добавлен/вычтен, false — если нет
range
public ValueRange range(TemporalField field)
Получает диапазон допустимых значений для указанного поля.
Объект диапазона выражает минимальное и максимальное допустимые значения для поля. Это время используется для повышения точности возвращаемого диапазона. Если диапазон вернуть невозможно (потому что поле не поддерживается или по какой-либо другой причине), выбрасывается исключение.
Если поле является ChronoField, то запрос выполняется здесь. Метод supported fields возвращает соответствующие экземпляры диапазона. Все остальные ChronoField вызовут UnsupportedTemporalTypeException.
Если поле не является ChronoField, результат этого метода получается путем вызова TemporalField.rangeRefinedBy(TemporalAccessor), передав this в качестве аргумента. Возможен ли запрос диапазона, определяется полем.
- Указано в:
-
rangeв интерфейсеTemporalAccessor - Параметры:
-
field- поле для запроса диапазона, не null - Возвращает:
- диапазон допустимых значений для поля, не null
- Выбрасывает:
-
DateTimeException- если диапазон для поля получить невозможно -
UnsupportedTemporalTypeException- если поле не поддерживается
get
public int get(TemporalField field)
Получает значение указанного поля из этого времени в качестве int.
Запрашивает у этого времени значение указанного поля. Возвращаемое значение всегда будет находиться в пределах допустимого диапазона значений для поля. Если значение вернуть невозможно (потому что поле не поддерживается или по какой-либо другой причине), выбрасывается исключение.
Если поле является ChronoField, то запрос выполняется здесь. Метод supported fields вернет допустимые значения на основе этого времени, за исключением NANO_OF_DAY, MICRO_OF_DAY, EPOCH_DAY и PROLEPTIC_MONTH, которые слишком велики для int и вызовут DateTimeException. Все остальные ChronoField вызовут UnsupportedTemporalTypeException.
Если поле не является ChronoField, результат этого метода получается путем вызова TemporalField.getFrom(TemporalAccessor), передав this в качестве аргумента. Может ли быть получено значение, и что оно представляет, определяется полем.
- Указано в:
-
getв интерфейсеTemporalAccessor - Параметры:
-
field- поле для получения, не null - Возвращает:
- значение для поля
- Выбрасывает:
-
DateTimeException- если значение для поля получить невозможно или значение находится вне диапазона допустимых значений для поля -
UnsupportedTemporalTypeException- если поле не поддерживается или диапазон значений превышаетint -
ArithmeticException- если возникает переполнение числовых значений
getLong
public long getLong(TemporalField field)
Получает значение указанного поля из этой даты и времени как long.
Это запрос значения указанного поля в этой дате и времени. Если значение вернуть невозможно, потому что поле не поддерживается или по какой-либо другой причине, выбрасывается исключение.
Если поле является ChronoField, то запрос реализуется здесь. supported fields вернёт допустимые значения на основе этой даты и времени. Все другие ChronoField экземпляры будут выбрасывать UnsupportedTemporalTypeException.
Если поле не является ChronoField, то результат этого метода получается путем вызова TemporalField.getFrom(TemporalAccessor), передавая this в качестве аргумента. Возможность получения значения и то, что оно представляет, определяется полем.
- Определено в:
-
getLongв интерфейсеTemporalAccessor - Параметры:
-
field- поле для получения, не null - Возвращает:
- значение для поля
- Исключения:
-
DateTimeException- если значение для поля получить невозможно -
UnsupportedTemporalTypeException- если поле не поддерживается -
ArithmeticException- если произошел переполнение числовых значений
toLocalDate
public LocalDate toLocalDate()
Получает LocalDate часть этой даты и времени.
Возвращает LocalDate с тем же годом, месяцем и днем, что и эта дата и время.
- Определено в:
-
toLocalDateв интерфейсеChronoLocalDateTime<LocalDate> - Возвращает:
- часть даты этой даты и времени, не null
getYear
public int getYear()
Получает поле года.
Этот метод возвращает примитивное значение int для года.
Возвращаемый годом методом является пролептическим в соответствии с get(YEAR). Чтобы получить год эры, используйте get(YEAR_OF_ERA).
- Возвращает:
- год, от MIN_YEAR до MAX_YEAR
getMonthValue
public int getMonthValue()
Получает поле месяца с 1 по 12.
Этот метод возвращает месяц как int от 1 до 12. Приложение часто будет понятнее, если будет использоваться перечисление Month вызывая getMonth().
- Возвращает:
- месяц, от 1 до 12
- См. также:
getMonth()
getMonth
public Month getMonth()
Получает поле месяца с помощью перечисления Month.
Этот метод возвращает перечисление Month для месяца. Это избегает путаницы, что значат значения int. Если вам нужен доступ к примитивному значению int, то перечисление предоставляет int value.
- Возвращает:
- месяц, не null
- См. также:
getMonthValue()
getDayOfMonth
public int getDayOfMonth()
Получает поле дня месяца.
Этот метод возвращает примитивное значение int для дня месяца.
- Возвращает:
- день месяца, от 1 до 31
getDayOfYear
public int getDayOfYear()
Получает поле дня года.
Этот метод возвращает примитивное значение int для дня года.
- Возвращает:
- день года, от 1 до 365, или 366 в високосном году
getDayOfWeek
public DayOfWeek getDayOfWeek()
Получает поле дня недели, которое является перечислением DayOfWeek.
Этот метод возвращает перечисление DayOfWeek для дня недели. Это избегает путаницы, что значат значения int. Если вам нужен доступ к примитивному значению int, то перечисление предоставляет int value.
Дополнительную информацию можно получить из DayOfWeek. Это включает текстовые имена значений.
- Возвращает:
- день недели, не null
toLocalTime
public LocalTime toLocalTime()
Получает LocalTime часть этой даты и времени.
Возвращает LocalTime с тем же часом, минутой, секундой и наносекундой, что и эта дата и время.
- Определено в:
-
toLocalTimeв интерфейсеChronoLocalDateTime<LocalDate> - Возвращает:
- часть времени этой даты и времени, не null
getHour
public int getHour()
Получает поле часа суток.
- Возвращает:
- час суток, от 0 до 23
getMinute
public int getMinute()
Получает поле минуты часа.
- Возвращает:
- минута часа, от 0 до 59
getSecond
public int getSecond()
Получает поле секунды минуты.
- Возвращает:
- секунда минуты, от 0 до 59
getNano
public int getNano()
Получает поле наносекунд секунды.
- Возвращает:
- наносекунда секунды, от 0 до 999 999 999
with
public LocalDateTime with(TemporalAdjuster adjuster)
Возвращает скопированную дату и время с внесённой корректировкой.
Возвращает LocalDateTime, на основе этого, с корректировкой даты и времени. Корректировка выполняется с помощью указанной стратегии объекта корректировщика. Прочитайте документацию корректировщика, чтобы понять, какая корректировка будет выполнена.
Простой корректировщик может просто установить одно из полей, такое как поле года. Более сложный корректировщик может установить дату на последнее число месяца.
Выборка общих корректировок приведена в TemporalAdjusters. Они включают нахождение «последнего дня месяца» и «следующей среды». Основные классы даты и времени также реализуют интерфейс TemporalAdjuster, такие как Month и MonthDay. Корректировщик отвечает за обработку особых случаев, таких как различная длина месяцев и високосные годы.
Например, этот код возвращает дату на последнее число июля:
import static java.time.Month.*; import static java.time.temporal.TemporalAdjusters.*; result = localDateTime.with(JULY).with(lastDayOfMonth());
Классы LocalDate и LocalTime реализуют TemporalAdjuster, поэтому этот метод может быть использован для изменения даты, времени или смещения:
result = localDateTime.with(date); result = localDateTime.with(time);
Результат этого метода получается путем вызова метода TemporalAdjuster.adjustInto(Temporal) указанного корректировщика, передавая this в качестве аргумента.
Этот экземпляр неизменяемый и не затрагивается этим вызовом метода.
- Определено в:
-
withв интерфейсеChronoLocalDateTime<LocalDate> - Определено в:
-
withв интерфейсеTemporal - Параметры:
-
adjuster- корректировщик для использования, не null - Возвращает:
- дата и время на основе
thisс произведённой корректировкой, не null - Исключения:
-
DateTimeException- если корректировка не может быть произведена -
ArithmeticException- если произошел переполнение числовых значений
with
public LocalDateTime with(TemporalField field,
long newValue) Возвращает копию этой даты и времени с указанным полем, установленным в новое значение.
Возвращает LocalDateTime, на основе этого, со значением для указанного поля, изменённым. Это можно использовать для изменения любого поддерживаемого поля, такого как год, месяц или день месяца. Если установить значение невозможно, потому что поле не поддерживается или по какой-либо другой причине, выбрасывается исключение.
В некоторых случаях изменение указанного поля может привести к тому, что получившаяся дата и время станут недопустимыми, например, изменение месяца с 31 января на февраль сделает день месяца недопустимым. В таких случаях поле отвечает за разрешение даты. Обычно оно выберет предыдущий допустимый день, что будет последним допустимым днём февраля в этом примере.
Если поле является ChronoField, то корректировка выполняется здесь. supported fields будет вести себя в соответствии с соответствующим методом в LocalDate или LocalTime. Все другие ChronoField экземпляры будут выбрасывать UnsupportedTemporalTypeException.
Если поле не является ChronoField, то результат этого метода получается путем вызова TemporalField.adjustInto(Temporal, long), передавая this в качестве аргумента. В этом случае поле определяет, как и нужно ли корректировать момент времени.
Этот экземпляр неизменяемый и не затрагивается этим вызовом метода.
- Определено в:
-
withв интерфейсеChronoLocalDateTime<LocalDate> - Определено в:
-
withв интерфейсеTemporal - Параметры:
-
field- поле для установки в результате, не null -
newValue- новое значение поля в результате - Возвращает:
- дата и время на основе
thisс установленным указанным полем, не null - Исключения:
-
DateTimeException- если поле нельзя установить -
UnsupportedTemporalTypeException- если поле не поддерживается -
ArithmeticException- если произошел переполнение числовых значений
withYear
public LocalDateTime withYear(int year)
Возвращает копию этой LocalDateTime с изменённым годом.
Время не влияет на вычисление и будет таким же в результате. Если день месяца недопустим для года, он будет изменён на последний допустимый день месяца.
Этот экземпляр неизменяемый и не затрагивается этим вызовом метода.
- Параметры:
-
year- год для установки в результате, от MIN_YEAR до MAX_YEAR - Возвращает:
- дата и время на основе этой даты и времени с запрошенным годом, не null
- Исключения:
-
DateTimeException- если значение года недопустимо
withMonth
public LocalDateTime withMonth(int month)
Возвращает копию этой LocalDateTime с изменённым месяцем.
Время не влияет на вычисление и будет таким же в результате. Если день месяца недопустим для года, он будет изменён на последний допустимый день месяца.
Этот экземпляр неизменяемый и не затрагивается этим вызовом метода.
- Параметры:
-
month- месяц для установки в результате, от 1 (январь) до 12 (декабрь) - Возвращает:
- объект
LocalDateTimeна основе этой даты и времени с указанным месяцем, не null - Выбрасывает:
-
DateTimeException- если значение месяца некорректно
withDayOfMonth
public LocalDateTime withDayOfMonth(int dayOfMonth)
Возвращает копию этого LocalDateTime с изменённым днём месяца.
Если результирующая дата-время некорректна, выбрасывается исключение. Время не влияет на вычисление и останется неизменным в результате.
Этот экземпляр неизменяемый и не затрагивается этим вызовом метода.
- Параметры:
-
dayOfMonth- день месяца для установки в результате, от 1 до 28-31 - Возвращает:
- объект
LocalDateTimeна основе этой даты и времени с указанным днём, не null - Выбрасывает:
-
DateTimeException- если значение дня месяца некорректно или если день месяца некорректен для данного месяца и года
withDayOfYear
public LocalDateTime withDayOfYear(int dayOfYear)
Возвращает копию этого LocalDateTime с изменённым днём года.
Если результирующая дата-время некорректна, выбрасывается исключение.
Этот экземпляр неизменяемый и не затрагивается этим вызовом метода.
- Параметры:
-
dayOfYear- день года для установки в результате, от 1 до 365-366 - Возвращает:
- объект
LocalDateTimeна основе этой даты с указанным днём, не null - Выбрасывает:
-
DateTimeException- если значение дня года некорректно или если день года некорректен для данного года
withHour
public LocalDateTime withHour(int hour)
Возвращает копию этого LocalDateTime с изменённым часом.
Этот экземпляр неизменяемый и не затрагивается этим вызовом метода.
- Параметры:
-
hour- час для установки в результате, от 0 до 23 - Возвращает:
- объект
LocalDateTimeна основе этой даты и времени с указанным часом, не null - Выбрасывает:
-
DateTimeException- если значение часа некорректно
withMinute
public LocalDateTime withMinute(int minute)
Возвращает копию этого LocalDateTime с изменённой минутой.
Этот экземпляр неизменяемый и не затрагивается этим вызовом метода.
- Параметры:
-
minute- минута для установки в результате, от 0 до 59 - Возвращает:
- объект
LocalDateTimeна основе этой даты и времени с указанной минутой, не null - Выбрасывает:
-
DateTimeException- если значение минуты некорректно
withSecond
public LocalDateTime withSecond(int second)
Возвращает копию этого LocalDateTime с изменённой секундой.
Этот экземпляр неизменяемый и не затрагивается этим вызовом метода.
- Параметры:
-
second- секунда для установки в результате, от 0 до 59 - Возвращает:
- объект
LocalDateTimeна основе этой даты и времени с указанной секундой, не null - Выбрасывает:
-
DateTimeException- если значение секунды некорректно
withNano
public LocalDateTime withNano(int nanoOfSecond)
Возвращает копию этого LocalDateTime с изменённым наносекундами.
Этот экземпляр неизменяемый и не затрагивается этим вызовом метода.
- Параметры:
-
nanoOfSecond- наносекунды для установки в результате, от 0 до 999 999 999 - Возвращает:
- объект
LocalDateTimeна основе этой даты и времени с указанным наносекундами, не null - Выбрасывает:
-
DateTimeException- если значение наносекунд некорректно
truncatedTo
public LocalDateTime truncatedTo(TemporalUnit unit)
Возвращает копию этого LocalDateTime с усечённым временем.
Усечение возвращает копию исходной даты и времени, с полями, меньшими указанного типа, установленных в ноль. Например, усечение с помощью типа minutes установит поля секунда и наносекунды в ноль.
Тип должен иметь продолжительность, которая делится на длину стандартного дня без остатка. Это включает все указанные единицы времени в ChronoUnit и DAYS. Другие типы вызывают исключение.
Этот экземпляр неизменяемый и не затрагивается этим вызовом метода.
- Параметры:
-
unit- тип для усечения, не null - Возвращает:
- объект
LocalDateTimeна основе этой даты и времени с усечённым временем, не null - Выбрасывает:
-
DateTimeException- если усечение невозможно -
UnsupportedTemporalTypeException- если тип не поддерживается
plus
public LocalDateTime plus(TemporalAmount amountToAdd)
Возвращает копию этой даты и времени с добавленным указанным значением.
Это возвращает LocalDateTime, основанный на этом, с добавлением указанного значения. Значение обычно Period или Duration, но может быть любого другого типа, реализующего интерфейс TemporalAmount.
Вычисление делегируется объекту значения с вызовом TemporalAmount.addTo(Temporal). Реализация значения свободна в реализации добавления любым способом, но обычно вызывает plus(long, TemporalUnit). Обратитесь к документации реализации значения, чтобы определить, может ли оно быть успешно добавлено.
Этот экземпляр неизменяемый и не затрагивается этим вызовом метода.
- Задано:
-
plusв интерфейсеChronoLocalDateTime<LocalDate> - Задано:
-
plusв интерфейсеTemporal - Параметры:
-
amountToAdd- значение для добавления, не null - Возвращает:
- объект
LocalDateTimeна основе этой даты и времени с выполненным добавлением, не null - Выбрасывает:
-
DateTimeException- если добавление невозможно -
ArithmeticException- если произошел переполнение
plus
public LocalDateTime plus(long amountToAdd,
TemporalUnit unit) Возвращает копию этой даты и времени с добавленным указанным значением.
Это возвращает LocalDateTime, основанный на этом, со значением в терминах типа, добавленного. Если невозможно добавить значение, потому что тип не поддерживается или по какой-либо другой причине, выбрасывается исключение.
Если поле является ChronoUnit, то добавление реализуется здесь. Единицы дат добавляются в соответствии с LocalDate.plus(long, TemporalUnit). Единицы времени добавляются в соответствии с LocalTime.plus(long, TemporalUnit) с любым переполнением в днях, добавленных эквивалентно с использованием plusDays(long).
Если поле не является ChronoUnit, то результат этого метода получается вызовом TemporalUnit.addTo(Temporal, long) передав this в качестве аргумента. В этом случае тип определяет, как и следует ли выполнять добавление.
Этот экземпляр неизменяемый и не затрагивается этим вызовом метода.
- Задано:
-
plusв интерфейсеChronoLocalDateTime<LocalDate> - Задано:
-
plusв интерфейсеTemporal - Параметры:
-
amountToAdd- количество типа для добавления к результату, может быть отрицательным -
unit- тип количества для добавления, не null - Возвращает:
- объект
LocalDateTimeна основе этой даты и времени с добавлением указанного значения, не null - Выбрасывает:
-
DateTimeException- если добавление невозможно -
UnsupportedTemporalTypeException- если тип не поддерживается -
ArithmeticException- если произошел переполнение
plusYears
public LocalDateTime plusYears(long years)
Возвращает копию этого LocalDateTime с добавленным указанным количеством лет.
Этот метод добавляет указанное значение к полю years в три шага:
- Добавить введенные годы к полю год
- Проверить, будет ли полученная дата некорректной
- Откорректировать день месяца, если необходимо
Например, 2008-02-29 (високосный год) плюс один год приведет к некорректной дате 2009-02-29 (не високосный год). Вместо возвращения некорректного результата, вместо этого выбирается последний допустимый день месяца, 2009-02-28.
Этот экземпляр неизменяемый и не затрагивается этим вызовом метода.
- Параметры:
-
years- годы для добавления, могут быть отрицательными - Возвращает:
- объект
LocalDateTimeна основе этой даты и времени с добавленными годами, не null - Выбрасывает:
-
DateTimeException- если результат выходит за рамки поддерживаемого диапазона дат
plusMonths
public LocalDateTime plusMonths(long months)
Возвращает копию этого LocalDateTime с добавленным указанным количеством месяцев.
Этот метод добавляет указанное значение к полю месяцев в три шага:
- Добавить введенные месяца к полю месяц
- Проверить, будет ли полученная дата некорректной
- Откорректировать день месяца, если необходимо
Например, 2007-03-31 плюс один месяц приведет к некорректной дате 2007-04-31. Вместо возвращения некорректного результата, вместо этого выбирается последний допустимый день месяца, 2007-04-30.
Этот экземпляр неизменяемый и не затрагивается этим вызовом метода.
- Параметры:
-
months- месяцы для добавления, могут быть отрицательными - Возвращает:
- объект
LocalDateTimeна основе этой даты и времени с добавленными месяцами, не null - Выбрасывает:
-
DateTimeException- если результат выходит за рамки поддерживаемого диапазона дат
plusWeeks
public LocalDateTime plusWeeks(long weeks)
Возвращает копию этого LocalDateTime с добавленным указанным количеством недель.
Этот метод добавляет указанное значение в неделях к полю дней, увеличивая поля месяца и года по мере необходимости, чтобы результат оставался корректным. Результат некорректен только в том случае, если максимальный/минимальный год превышен.
Например, 2008-12-31 плюс одна неделя приведет к 2009-01-07.
Этот экземпляр неизменяемый и не затрагивается этим вызовом метода.
- Параметры:
-
weeks- количество недель для добавления, может быть отрицательным - Возвращает:
- объект
LocalDateTimeна основе текущей даты и времени с добавленными неделями, не null - Выбрасывает:
-
DateTimeException- если результат выходит за поддерживаемый диапазон дат
plusDays
public LocalDateTime plusDays(long days)
Возвращает копию этого LocalDateTime с добавленным указанным количеством дней.
Этот метод добавляет указанное количество к полю дня, увеличивая поля месяца и года по мере необходимости, чтобы результат оставался допустимым. Результат недействителен только в случае превышения максимального/минимального года.
Например, 2008-12-31 плюс один день даст 2009-01-01.
Этот экземпляр неизменяемый и не изменяется этим вызовом метода.
- Параметры:
-
days- количество дней для добавления, может быть отрицательным - Возвращает:
- объект
LocalDateTimeна основе текущей даты и времени с добавленными днями, не null - Выбрасывает:
-
DateTimeException- если результат выходит за поддерживаемый диапазон дат
plusHours
public LocalDateTime plusHours(long hours)
Возвращает копию этого LocalDateTime с добавленным указанным количеством часов.
Этот экземпляр неизменяемый и не изменяется этим вызовом метода.
- Параметры:
-
hours- количество часов для добавления, может быть отрицательным - Возвращает:
- объект
LocalDateTimeна основе текущей даты и времени с добавленными часами, не null - Выбрасывает:
-
DateTimeException- если результат выходит за поддерживаемый диапазон дат
plusMinutes
public LocalDateTime plusMinutes(long minutes)
Возвращает копию этого LocalDateTime с добавленным указанным количеством минут.
Этот экземпляр неизменяемый и не изменяется этим вызовом метода.
- Параметры:
-
minutes- количество минут для добавления, может быть отрицательным - Возвращает:
- объект
LocalDateTimeна основе текущей даты и времени с добавленными минутами, не null - Выбрасывает:
-
DateTimeException- если результат выходит за поддерживаемый диапазон дат
plusSeconds
public LocalDateTime plusSeconds(long seconds)
Возвращает копию этого LocalDateTime с добавленным указанным количеством секунд.
Этот экземпляр неизменяемый и не изменяется этим вызовом метода.
- Параметры:
-
seconds- количество секунд для добавления, может быть отрицательным - Возвращает:
- объект
LocalDateTimeна основе текущей даты и времени с добавленными секундами, не null - Выбрасывает:
-
DateTimeException- если результат выходит за поддерживаемый диапазон дат
plusNanos
public LocalDateTime plusNanos(long nanos)
Возвращает копию этого LocalDateTime с добавленным указанным количеством наносекунд.
Этот экземпляр неизменяемый и не изменяется этим вызовом метода.
- Параметры:
-
nanos- количество наносекунд для добавления, может быть отрицательным - Возвращает:
- объект
LocalDateTimeна основе текущей даты и времени с добавленными наносекундами, не null - Выбрасывает:
-
DateTimeException- если результат выходит за поддерживаемый диапазон дат
minus
public LocalDateTime minus(TemporalAmount amountToSubtract)
Возвращает копию этой даты и времени с вычтенным указанным количеством.
Это возвращает LocalDateTime, основанный на этом, с вычтенным указанным количеством. Количество обычно представляет собой Period или Duration, но может быть любого другого типа, реализующего интерфейс TemporalAmount.
Вычисление делегируется объекту количества путем вызова TemporalAmount.subtractFrom(Temporal). Реализация количества свободна реализовать вычитание любым способом, однако она обычно вызывает minus(long, TemporalUnit). Обратитесь к документации реализации количества, чтобы определить, можно ли его успешно вычесть.
Этот экземпляр неизменяемый и не изменяется этим вызовом метода.
- Определено в:
-
minusв интерфейсеChronoLocalDateTime<LocalDate> - Определено в:
-
minusв интерфейсеTemporal - Параметры:
-
amountToSubtract- количество для вычитания, не null - Возвращает:
- объект
LocalDateTimeна основе этой даты и времени с выполненным вычитанием, не null - Выбрасывает:
-
DateTimeException- если вычитание невозможно -
ArithmeticException- если происходит переполнение числовых значений
minus
public LocalDateTime minus(long amountToSubtract,
TemporalUnit unit) Возвращает копию этой даты и времени с вычтенным указанным количеством.
Это возвращает LocalDateTime, основанный на этом, с вычтенным указанным количеством в терминах единицы измерения. Если вычитание невозможно, потому что единица не поддерживается или по какой-либо другой причине, выбрасывается исключение.
Этот метод эквивалентен plus(long, TemporalUnit) с отрицательным количеством. Смотрите этот метод для полного описания того, как работает сложение, а следовательно, и вычитание.
Этот экземпляр неизменяемый и не изменяется этим вызовом метода.
- Определено в:
-
minusв интерфейсеChronoLocalDateTime<LocalDate> - Определено в:
-
minusв интерфейсеTemporal - Параметры:
-
amountToSubtract- количество единицы для вычитания из результата, может быть отрицательным -
unit- единица измерения количества для вычитания, не null - Возвращает:
- объект
LocalDateTimeна основе текущей даты и времени с вычтенным указанным количеством, не null - Выбрасывает:
-
DateTimeException- если вычитание невозможно -
UnsupportedTemporalTypeException- если единица не поддерживается -
ArithmeticException- если происходит переполнение числовых значений
minusYears
public LocalDateTime minusYears(long years)
Возвращает копию этого LocalDateTime с вычтенным указанным количеством лет.
Этот метод вычитает указанное количество из поля года в три шага:
- Вычитает входные годы из поля года
- Проверяет, будет ли полученная дата недействительной
- Если необходимо, корректирует день месяца до последнего допустимого дня
Например, 2008-02-29 (високосный год) минус один год даст недействительную дату 2009-02-29 (невисокосный год). Вместо возвращения недействительного результата вместо этого выбирается последний допустимый день месяца, 2009-02-28.
Этот экземпляр неизменяемый и не изменяется этим вызовом метода.
- Параметры:
-
years- количество лет для вычитания, может быть отрицательным - Возвращает:
- объект
LocalDateTimeна основе текущей даты и времени с вычтенными годами, не null - Выбрасывает:
-
DateTimeException- если результат выходит за поддерживаемый диапазон дат
minusMonths
public LocalDateTime minusMonths(long months)
Возвращает копию этого LocalDateTime с вычтенным указанным количеством месяцев.
Этот метод вычитает указанное количество из поля месяца в три шага:
- Вычитает входные месяца из поля месяца
- Проверяет, будет ли полученная дата недействительной
- Если необходимо, корректирует день месяца до последнего допустимого дня
Например, 2007-03-31 минус один месяц даст недействительную дату 2007-04-31. Вместо возвращения недействительного результата вместо этого выбирается последний допустимый день месяца, 2007-04-30.
Этот экземпляр неизменяемый и не изменяется этим вызовом метода.
- Параметры:
-
months- количество месяцев для вычитания, может быть отрицательным - Возвращает:
- объект
LocalDateTimeна основе текущей даты и времени с вычтенными месяцами, не null - Выбрасывает:
-
DateTimeException- если результат выходит за поддерживаемый диапазон дат
minusWeeks
public LocalDateTime minusWeeks(long weeks)
Возвращает копию этого LocalDateTime с вычтенным указанным количеством недель.
Этот метод вычитает указанное количество недель из поля дней, уменьшая поля месяца и года по мере необходимости, чтобы результат оставался допустимым. Результат недействителен только в случае превышения максимального/минимального года.
Например, 2009-01-07 минус одна неделя даст 2008-12-31.
Этот экземпляр неизменяемый и не изменяется этим вызовом метода.
- Параметры:
-
weeks- количество недель для вычитания, может быть отрицательным - Возвращает:
- объект
LocalDateTimeна основе текущей даты и времени с вычтенными неделями, не null - Выбрасывает:
-
DateTimeException- если результат выходит за поддерживаемый диапазон дат
minusDays
public LocalDateTime minusDays(long days)
Возвращает копию этого LocalDateTime с вычтенным указанным количеством дней.
Этот метод вычитает указанное количество из поля дней, уменьшая поля месяца и года по мере необходимости, чтобы результат оставался допустимым. Результат недействителен только в случае превышения максимального/минимального года.
Например, 2009-01-01 минус один день даст 2008-12-31.
Этот экземпляр неизменяемый и не изменяется этим вызовом метода.
- Параметры:
-
days- количество дней для вычитания, может быть отрицательным - Возвращает:
- объект
LocalDateTimeна основе текущей даты и времени с вычтенными днями, не null - Выбрасывает:
-
DateTimeException- если результат выходит за поддерживаемый диапазон дат
minusHours
public LocalDateTime minusHours(long hours)
Возвращает копию этого LocalDateTime с вычтенным указанным количеством часов.
Этот экземпляр неизменяемый и не изменяется этим вызовом метода.
- Параметры:
-
hours- количество часов для вычитания, может быть отрицательным - Возвращает:
- объект
LocalDateTimeна основе текущей даты и времени с вычтенными часами, не null - Выбрасывает:
-
DateTimeException- если результат выходит за поддерживаемый диапазон дат
minusMinutes
public LocalDateTime minusMinutes(long minutes)
Возвращает копию этого LocalDateTime с вычтенным указанным количеством минут.
Этот экземпляр неизменяемый и не изменяется этим вызовом метода.
- Параметры:
-
minutes- количество минут для вычитания, может быть отрицательным - Возвращает:
- объект
LocalDateTimeна основе текущей даты и времени с вычтенными минутами, не null - Выбрасывает:
-
DateTimeException- если результат выходит за поддерживаемый диапазон дат
minusSeconds
public LocalDateTime minusSeconds(long seconds)
Возвращает копию этого LocalDateTime со значениями, уменьшенными на указанное количество секунд.
Этот экземпляр неизменяемый и не изменяется в результате вызова этого метода.
- Параметры:
-
seconds- количество секунд для вычитания, может быть отрицательным - Возвращает:
- экземпляр
LocalDateTimeна основе этой даты и времени со значениями, уменьшенными на количество секунд, не null - Исключения:
-
DateTimeException- если результат выходит за поддерживаемый диапазон дат
minusNanos
public LocalDateTime minusNanos(long nanos)
Возвращает копию этого LocalDateTime со значениями, уменьшенными на указанное количество наносекунд.
Этот экземпляр неизменяемый и не изменяется в результате вызова этого метода.
- Параметры:
-
nanos- количество наносекунд для вычитания, может быть отрицательным - Возвращает:
- экземпляр
LocalDateTimeна основе этой даты и времени со значениями, уменьшенными на количество наносекунд, не null - Исключения:
-
DateTimeException- если результат выходит за поддерживаемый диапазон дат
query
public <R> R query(TemporalQuery<R> query)
Запрашивает эту дату и время с использованием указанного запроса.
Этот запрос выполняется для этой даты и времени с использованием указанного объекта стратегии запроса. Объект TemporalQuery определяет логику, используемую для получения результата. Обратитесь к документации запроса, чтобы понять, каким будет результат этого метода.
Результат этого метода получается путем вызова метода TemporalQuery.queryFrom(TemporalAccessor) для указанного запроса, передав this в качестве аргумента.
- Определено в:
-
queryв интерфейсеChronoLocalDateTime<LocalDate> - Определено в:
-
queryв интерфейсеTemporalAccessor - Параметры типа:
-
R- тип результата - Параметры:
-
query- запрос для вызова, не null - Возвращает:
- результат запроса, может быть null (определяется запросом)
- Исключения:
-
DateTimeException- если запрос выполнить невозможно (определяется запросом) -
ArithmeticException- если произошел переполнение числовых значений (определяется запросом)
adjustInto
public Temporal adjustInto(Temporal temporal)
Настраивает указанный объект временной шкалы для того, чтобы иметь ту же дату и время, что и этот объект.
Возвращает объект временной шкалы того же наблюдаемого типа, что и входной, с измененной датой и временем на совпадающую с этой.
Настройка эквивалентна дважды использованию Temporal.with(TemporalField, long), передавая ChronoField.EPOCH_DAY и ChronoField.NANO_OF_DAY в качестве полей.
В большинстве случаев более понятно использовать обратный вызов с Temporal.with(TemporalAdjuster):
// these two lines are equivalent, but the second approach is recommended temporal = thisLocalDateTime.adjustInto(temporal); temporal = temporal.with(thisLocalDateTime);
Этот экземпляр неизменяемый и не изменяется в результате вызова этого метода.
- Определено в:
-
adjustIntoв интерфейсеChronoLocalDateTime<LocalDate> - Определено в:
-
adjustIntoв интерфейсеTemporalAdjuster - Параметры:
-
temporal- целевой объект для настройки, не null - Возвращает:
- настроенный объект, не null
- Исключения:
-
DateTimeException- если настройку выполнить невозможно -
ArithmeticException- если произошел переполнение числовых значений
until
public long until(Temporal endExclusive,
TemporalUnit unit) Вычисляет продолжительность времени до другой даты и времени в терминах указанного единицы измерения.
Это вычисляет продолжительность времени между двумя объектами LocalDateTime в терминах одной TemporalUnit. Начальная и конечная точки – this и указанная дата и время. Результат будет отрицательным, если конечная точка предшествует начальной. Temporal , переданный в этот метод, преобразуется в LocalDateTime с использованием from(TemporalAccessor). Например, продолжительность в днях между двумя датами и временами может быть вычислена с помощью startDateTime.until(endDateTime, DAYS).
Вычисление возвращает целое число, представляющее количество полных единиц между двумя датами и временами. Например, количество месяцев между 2012-06-15T00:00 и 2012-08-14T23:59 составит всего один месяц, так как до двух месяцев не хватает одной минуты.
Этот метод можно использовать двумя эквивалентными способами. Первый – вызвать этот метод. Второй – использовать TemporalUnit.between(Temporal, Temporal):
// these two lines are equivalent amount = start.until(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 вызовут исключение.
Если единица не является ChronoUnit, то результат этого метода получается путем вызова TemporalUnit.between(Temporal, Temporal) с this в качестве первого аргумента и преобразованного входного временного объекта в качестве второго.
Этот экземпляр неизменяемый и не изменяется в результате вызова этого метода.
- Определено в:
-
untilв интерфейсеTemporal - Параметры:
-
endExclusive- конечная дата, исключаемая, которая преобразуется вLocalDateTime, не null -
unit- единица измерения, не null - Возвращает:
- продолжительность времени между этой датой и временем и конечной датой и временем
- Исключения:
-
DateTimeException- если продолжительность времени не может быть вычислена или конечный временной объект не может быть преобразован вLocalDateTime -
UnsupportedTemporalTypeException- если единица не поддерживается -
ArithmeticException- если произошел переполнение числовых значений
format
public String format(DateTimeFormatter formatter)
Форматирует эту дату и время с использованием указанного форматировщика.
Эта дата и время будут переданы форматировщику для создания строки.
- Определено в:
-
formatв интерфейсеChronoLocalDateTime<LocalDate> - Параметры:
-
formatter- используемый форматировщик, не null - Возвращает:
- строка отформатированной даты и времени, не null
- Исключения:
-
DateTimeException- если при печати произошла ошибка
atOffset
public OffsetDateTime atOffset(ZoneOffset offset)
Объединяет эту дату и время со смещением, чтобы создать OffsetDateTime.
Возвращает OffsetDateTime, образованный из этой даты и времени по указанному смещению. Все возможные сочетания даты и времени со смещением допустимы.
- Параметры:
-
offset- смещение для объединения, не null - Возвращает:
- дата и время со смещением, образованная из этой даты и времени и указанного смещения, не null
atZone
public ZonedDateTime atZone(ZoneId zone)
Объединяет эту дату и время с часовым поясом, чтобы создать ZonedDateTime.
Возвращает ZonedDateTime, образованный из этой даты и времени в указанном часовом поясе. Результат будет соответствовать этой дате и времени насколько это возможно. Правила часового пояса, такие как переход на летнее время, означают, что не каждая локальная дата и время является допустимой для указанного часового пояса, поэтому локальная дата и время может быть скорректирована.
Локальная дата и время разрешаются до одного момента на временной шкале. Это достигается путем поиска допустимого смещения от UTC/Гринвича для локальной даты и времени, как определено rules идентификатора часового пояса.
В большинстве случаев для локальной даты и времени существует только одно допустимое смещение. В случае перекрытия, когда часы переводятся назад, существует два допустимых смещения. Этот метод использует более раннее смещение, обычно соответствующее "лету".
Чтобы получить более позднее смещение при перекрытии, вызовите ZonedDateTime.withLaterOffsetAtOverlap() для результата этого метода. Чтобы вызвать исключение при наличии промежутка или перекрытия, используйте ZonedDateTime.ofStrict(LocalDateTime, ZoneOffset, ZoneId).
- Определено в:
-
atZoneв интерфейсеChronoLocalDateTime<LocalDate> - Параметры:
-
zone- используемый часовой пояс, не null - Возвращает:
- дата и время в часовом поясе, образованная из этой даты и времени, не null
compareTo
public int compareTo(ChronoLocalDateTime<?> other)
Сравнивает эту дату и время с другой датой и временем.
Сравнение в первую очередь основано на дате и времени, от самого раннего к самому позднему. Оно "совместимо с equals", как определено в Comparable.
Если все сравниваемые даты и времена являются экземплярами LocalDateTime, сравнение будет основано исключительно на дате и времени. Если некоторые сравниваемые даты находятся в разных хронологиях, то также учитывается хронология, см. ChronoLocalDateTime.compareTo(java.time.chrono.ChronoLocalDateTime<?>).
- Определено в:
-
compareToв интерфейсеComparable<ChronoLocalDateTime<?>> - Определено в:
-
compareToв интерфейсеChronoLocalDateTime<LocalDate> - Параметры:
-
other- другая дата и время для сравнения, не null - Возвращает:
- значение сравнения, отрицательное, если меньше, положительное, если больше
isAfter
public boolean isAfter(ChronoLocalDateTime<?> other)
Проверяет, является ли эта дата и время после указанной даты и времени.
Это проверяет, представляет ли эта дата и время точку на временной шкале локанального времени после другой даты и времени.
LocalDate a = LocalDateTime.of(2012, 6, 30, 12, 00); LocalDate b = LocalDateTime.of(2012, 7, 1, 12, 00); a.isAfter(b) == false a.isAfter(a) == false b.isAfter(a) == true
Этот метод учитывает только положение двух дат и времени на локальной временной шкале. Он не учитывает хронологию или систему календаря. Это отличается от сравнения в compareTo(ChronoLocalDateTime), но соответствует подходу ChronoLocalDateTime.timeLineOrder().
- Определено в:
-
isAfterв интерфейсеChronoLocalDateTime<LocalDate> - Параметры:
-
other- другое время для сравнения, не null - Возвращает:
- true, если эта дата и время после указанной даты и времени
isBefore
public boolean isBefore(ChronoLocalDateTime<?> other)
Проверяет, является ли эта дата и время до указанной даты и времени.
Это проверяет, представляет ли эта дата и время точку на локальной временной шкале до другой даты и времени.
LocalDate a = LocalDateTime.of(2012, 6, 30, 12, 00); LocalDate b = LocalDateTime.of(2012, 7, 1, 12, 00); a.isBefore(b) == true a.isBefore(a) == false b.isBefore(a) == false
Этот метод учитывает только положение двух дат и времени на локальной временной шкале. Он не учитывает хронологию или систему календаря. Это отличается от сравнения в compareTo(ChronoLocalDateTime), но соответствует подходу ChronoLocalDateTime.timeLineOrder().
- Определено в:
-
isBeforeв интерфейсеChronoLocalDateTime<LocalDate> - Параметры:
-
other- другое время для сравнения, не null - Возвращает:
- true, если эта дата и время до указанной даты и времени
isEqual
public boolean isEqual(ChronoLocalDateTime<?> other)
Проверяет, равна ли эта дата и время указанной дате и времени.
Проверяет, представляет ли эта дата и время ту же точку на локальной временной шкале, что и другая дата и время.
LocalDate a = LocalDateTime.of(2012, 6, 30, 12, 00); LocalDate b = LocalDateTime.of(2012, 7, 1, 12, 00); a.isEqual(b) == false a.isEqual(a) == true b.isEqual(a) == false
Этот метод учитывает только положение двух дат и времени на локальной временной шкале. Он не учитывает хронологию или систему календаря. Это отличается от сравнения в compareTo(ChronoLocalDateTime), но соответствует подходу ChronoLocalDateTime.timeLineOrder().
- Определено в:
-
isEqualв интерфейсеChronoLocalDateTime<LocalDate> - Параметры:
-
other- другое время для сравнения, не null - Возвращает:
- true, если эта дата и время равны указанной дате и времени
equals
public boolean equals(Object obj)
Проверяет, равна ли эта дата и время другой дате и времени.
Сравнивает эту LocalDateTime с другой, гарантируя, что дата и время одинаковы. Сравниваются только объекты типа LocalDateTime, другие типы возвращают false.
- Определено в:
-
equalsв интерфейсеChronoLocalDateTime<LocalDate> - Переопределяет:
-
equalsв классеObject - Параметры:
-
obj- объект для проверки, null возвращает false - Возвращает:
- true, если это равно другой дате и времени
- См. также:
-
Object.hashCode(),HashMap
hashCode
public int hashCode()
Хеш-код для этой даты и времени.
- Определено в:
-
hashCodeв интерфейсеChronoLocalDateTime<LocalDate> - Переопределяет:
-
hashCodeв классеObject - Возвращает:
- подходящий хеш-код
- См. также:
-
Object.equals(java.lang.Object),System.identityHashCode(java.lang.Object)
toString
public String toString()
Выводит эту дату и время как String, например, 2007-12-03T10:15:30.
Вывод будет в одном из следующих форматов ISO-8601:
uuuu-MM-dd'T'HH:mmuuuu-MM-dd'T'HH:mm:ssuuuu-MM-dd'T'HH:mm:ss.SSSuuuu-MM-dd'T'HH:mm:ss.SSSSSSuuuu-MM-dd'T'HH:mm:ss.SSSSSSSSS
- Определено в:
-
toStringв интерфейсеChronoLocalDateTime<LocalDate> - Переопределяет:
-
toStringв классеObject - Возвращает:
- строковое представление этой даты и времени, не null
© 1993, 2020, 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.