Spec-Zone.ru › OpenJDK 24

Класс 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 неприемлем.

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

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

Краткое описание полей

Модификатор и тип Поле Описание
static final LocalDateTime MAX
Максимально поддерживаемая LocalDateTime, '+999999999-12-31T23:59:59.999999999'.
static final LocalDateTime MIN
Минимально поддерживаемая LocalDateTime, '-999999999-01-01T00:00:00'.

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

Модификатор и тип Метод Описание
Temporal adjustInto(Temporal temporal)
Настраивает указанный временной объект на совпадение даты и времени с этим объектом.
OffsetDateTime atOffset(ZoneOffset offset)
Объединяет эту дату и время со смещением, чтобы создать OffsetDateTime.
ZonedDateTime atZone(ZoneId zone)
Объединяет эту дату и время с часовым поясом, чтобы создать ZonedDateTime.
int compareTo(ChronoLocalDateTime<?> other)
Сравнивает эту дату и время с другой датой и временем.
boolean equals(Object obj)
Проверяет, равна ли эта дата и время другой дате и времени.
String format(DateTimeFormatter formatter)
Форматирует эту дату и время с использованием указанного форматировщика.
static LocalDateTime from(TemporalAccessor temporal)
Получает экземпляр LocalDateTime из временного объекта.
int get(TemporalField field)
Получает значение указанного поля из этой даты и времени в виде int.
int getDayOfMonth()
Получает поле день месяца.
DayOfWeek getDayOfWeek()
Получает поле день недели, которое является перечислением DayOfWeek.
int getDayOfYear()
Получает поле день года.
int getHour()
Получает поле час суток.
long getLong(TemporalField field)
Получает значение указанного поля из этой даты и времени в виде long.
int getMinute()
Получает поле минута часа.
Month getMonth()
Получает поле месяц года, используя перечисление Month.
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 с указанным числом дней, вычтенных.
LocalDateTime minusHours(long hours)
Возвращает копию этого LocalDateTime с указанным числом часов, вычтенных.
LocalDateTime minusMinutes(long minutes)
Возвращает копию этого LocalDateTime с указанным числом минут, вычтенных.
LocalDateTime minusMonths(long months)
Возвращает копию этого LocalDateTime с указанным числом месяцев, вычтенных.
LocalDateTime minusNanos(long nanos)
Возвращает копию этого LocalDateTime с указанным числом наносекунд, вычтенных.
LocalDateTime minusSeconds(long seconds)
Возвращает копию этого LocalDateTime с указанным числом секунд, вычтенных.
LocalDateTime minusWeeks(long weeks)
Возвращает копию этого LocalDateTime с указанным числом недель, вычтенных.
LocalDateTime minusYears(long years)
Возвращает копию этого LocalDateTime с указанным числом лет, вычтенных.
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)
Получает экземпляр LocalDateTime из года, месяца, дня, часа и минуты, устанавливая секунды и наносекунды в ноль.
static LocalDateTime of(int year, int month, int dayOfMonth, int hour, int minute, int second)
Получает экземпляр LocalDateTime из года, месяца, дня, часа, минуты и секунды, устанавливая наносекунды в ноль.
static LocalDateTime of(int year, int month, int dayOfMonth, int hour, int minute, int second, int nanoOfSecond)
Получает экземпляр LocalDateTime из года, месяца, дня, часа, минуты, секунды и наносекунды.
static LocalDateTime of(int year, Month month, int dayOfMonth, int hour, int minute)
Получает экземпляр LocalDateTime из года, месяца, дня, часа и минуты, устанавливая секунды и наносекунды в ноль.
static LocalDateTime of(int year, Month month, int dayOfMonth, int hour, int minute, int second)
Получает экземпляр LocalDateTime из года, месяца, дня, часа, минуты и секунды, устанавливая наносекунды в ноль.
static LocalDateTime of(int year, Month month, int dayOfMonth, int hour, int minute, int second, int nanoOfSecond)
Получает экземпляр LocalDateTime из года, месяца, дня, часа, минуты, секунды и наносекунды.
static LocalDateTime of(LocalDate date, LocalTime time)
Получает экземпляр LocalDateTime из даты и времени.
static LocalDateTime ofEpochSecond(long epochSecond, int nanoOfSecond, ZoneOffset offset)
Получает экземпляр LocalDateTime, используя секунды с эпохи 1970-01-01T00:00:00Z.
static LocalDateTime ofInstant(Instant instant, ZoneId zone)
Получает экземпляр LocalDateTime из Instant и идентификатора часового пояса.
static LocalDateTime parse(CharSequence text)
Получает экземпляр LocalDateTime из текстовой строки, такой как 2007-12-03T10:15:30.
static LocalDateTime parse(CharSequence text, DateTimeFormatter formatter)
Получает экземпляр LocalDateTime из текстовой строки с использованием определенного форматировщика.
LocalDateTime plus(long amountToAdd, TemporalUnit unit)
Возвращает копию этой даты и времени с указанным значением, добавленным.
LocalDateTime plus(TemporalAmount amountToAdd)
Возвращает копию этой даты и времени с указанным значением, добавленным.
LocalDateTime plusDays(long days)
Возвращает копию этого LocalDateTime с указанным числом дней, добавленных.
LocalDateTime plusHours(long hours)
Возвращает копию этого LocalDateTime с указанным числом часов, добавленных.
LocalDateTime plusMinutes(long minutes)
Возвращает копию этого LocalDateTime с указанным числом минут, добавленных.
LocalDateTime plusMonths(long months)
Возвращает копию этого LocalDateTime с указанным числом месяцев, добавленных.
LocalDateTime plusNanos(long nanos)
Возвращает копию этого LocalDateTime с указанным числом наносекунд, добавленных.
LocalDateTime plusSeconds(long seconds)
Возвращает копию этого LocalDateTime с указанным числом секунд, добавленных.
LocalDateTime plusWeeks(long weeks)
Возвращает копию этого LocalDateTime с указанным числом недель, добавленных.
LocalDateTime plusYears(long years)
Возвращает копию этого LocalDateTime с указанным числом лет, добавленных.
<R> R query(TemporalQuery<R> query)
Запрашивает эту дату и время с использованием указанного запроса.
ValueRange range(TemporalField field)
Получает диапазон допустимых значений для указанного поля.
LocalDate toLocalDate()
Получает часть LocalDate этой даты и времени.
LocalTime toLocalTime()
Получает часть LocalTime этой даты и времени.
String truncatedTo(TemporalUnit unit)
Выводит эту дату и время как String, например, 2007-12-03T10:15:30.
LocalDateTime until(Temporal endExclusive, TemporalUnit unit)
Возвращает копию этого LocalDateTime с обнуленным временем.
long with(TemporalAdjuster adjuster)
Вычисляет количество времени до другой даты и времени в терминах указанной единицы.
LocalDateTime with(TemporalField field, long newValue)
Возвращает скорректированную копию этой даты и времени.
LocalDateTime withDayOfMonth(int dayOfMonth)
Возвращает копию этой даты и времени с указанным полем, установленным на новое значение.
LocalDateTime withDayOfYear(int dayOfYear)
Возвращает копию этого LocalDateTime с изменённым днём месяца.
LocalDateTime withHour(int hour)
Возвращает копию этого LocalDateTime с изменённым днём года.
LocalDateTime withMinute(int minute)
Возвращает копию этого LocalDateTime с изменённым часом дня.
LocalDateTime withMonth(int month)
Возвращает копию этого LocalDateTime с изменённой минутой часа.
LocalDateTime withNano(int nanoOfSecond)
Возвращает копию этого LocalDateTime с изменённым месяцем года.
LocalDateTime withSecond(int second)
Возвращает копию этого LocalDateTime с изменённым наносекундами секунды.
LocalDateTime withYear(int year)
Возвращает копию этого LocalDateTime с изменённой секундой минуты.
LocalDateTime withNano(int nanoOfSecond)
Возвращает копию этого LocalDateTime с изменённым годом.

Методы, объявленные в классе java.lang.Object

clone, finalize, getClass, notify, notifyAll, wait, wait, wait

Методы, объявленные в интерфейсе java.time.chrono.ChronoLocalDateTime

getChronology, 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/Гринвича получается с использованием идентификатора часового пояса и мгновения времени, так как для каждого мгновения времени существует только одно допустимое смещение. Затем, мгновение времени и смещение используются для расчёта локальной даты и времени.

Parameters:
instant - мгновение времени для создания даты и времени, не null
zone - часовой пояс, который может быть смещением, не null
Returns:
локальная дата и время, не null
Throws:
DateTimeException - если результат превышает поддерживаемый диапазон

ofEpochSecond

public static LocalDateTime ofEpochSecond(long epochSecond, int nanoOfSecond, ZoneOffset offset)
Получает экземпляр LocalDateTime, используя секунды с эпохи 1970-01-01T00:00:00Z.

Это позволяет преобразовать поле epoch-second в локальную дату и время. Это в первую очередь предназначено для преобразований низкого уровня, а не для общего использования в приложениях.

Parameters:
epochSecond - количество секунд с эпохи 1970-01-01T00:00:00Z
nanoOfSecond - наносекунды в секунде, от 0 до 999 999 999
offset - смещение часового пояса, не null
Returns:
локальная дата и время, не null
Throws:
DateTimeException - если результат превышает поддерживаемый диапазон или значение наносекунд некорректно

from

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

Это получает локальную дату и время на основе указанного временного объекта. TemporalAccessor представляет собой произвольный набор информации о дате и времени, который этот фабричный метод преобразует в экземпляр LocalDateTime.

Преобразование извлекает и комбинирует LocalDate и LocalTime из временного объекта. Реализации разрешается выполнять оптимизации, такие как доступ к полям, эквивалентным соответствующим объектам.

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

Parameters:
temporal - временной объект для преобразования, не null
Returns:
локальная дата и время, не null
Throws:
DateTimeException - если невозможно преобразовать в LocalDateTime

parse

public static LocalDateTime parse(CharSequence text)
Получает экземпляр LocalDateTime из текстовой строки, такой как 2007-12-03T10:15:30.

Строка должна представлять собой корректную дату и время и парсится с помощью DateTimeFormatter.ISO_LOCAL_DATE_TIME.

Parameters:
text - текст для парсинга, например, "2007-12-03T10:15:30", не null
Returns:
раз парсированная локальная дата и время, не null
Throws:
DateTimeParseException - если текст не может быть распарсен

parse

public static LocalDateTime parse(CharSequence text, DateTimeFormatter formatter)
Получает экземпляр LocalDateTime из текстовой строки, используя определённый формат.

Текст парсится с помощью формата, возвращая дату и время.

Parameters:
text - текст для парсинга, не null
formatter - используемый формат, не null
Returns:
раз парсированная локальная дата и время, не null
Throws:
DateTimeParseException - если текст не может быть распарсен

isSupported

public boolean isSupported(TemporalField field)
Проверяет, поддерживается ли указанное поле.

Проверяет, можно ли запросить у этой даты и времени указанное поле. Если ложь, то вызов методов 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 в качестве аргумента. Поддержка поля определяется самим полем.

Specified by:
isSupported в интерфейсе ChronoLocalDateTime<LocalDate>
Specified by:
isSupported в интерфейсе TemporalAccessor
Parameters:
field - поле для проверки, null возвращает false
Returns:
true, если поле поддерживается в этой дате и времени, false в противном случае

isSupported

public boolean isSupported(TemporalUnit unit)
Проверяет, поддерживается ли указанный интервал.

Проверяет, можно ли добавить или вычесть указанный интервал к этой дате и времени. Если ложь, то вызов методов 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 в качестве аргумента. Поддержка интервала определяется самим интервалом.

Specified by:
isSupported в интерфейсе ChronoLocalDateTime<LocalDate>
Specified by:
isSupported в интерфейсе Temporal
Parameters:
unit - интервал для проверки, null возвращает false
Returns:
true, если интервал может быть добавлен/вычтен, false в противном случае

range

public ValueRange range(TemporalField field)
Получает диапазон допустимых значений для указанного поля.

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

Если поле является ChronoField, то запрос реализуется здесь. supported fields возвращает соответствующие экземпляры диапазонов. Все остальные ChronoField экземпляры будут выбрасывать UnsupportedTemporalTypeException.

Если поле не является ChronoField, то результат этого метода получается путём вызова TemporalField.rangeRefinedBy(TemporalAccessor), передав this в качестве аргумента. Возможность получения диапазона определяется полем.

Specified by:
range в интерфейсе TemporalAccessor
Parameters:
field - поле, для которого запрашивается диапазон, не null
Returns:
диапазон допустимых значений для поля, не null
Throws:
DateTimeException - если диапазон для поля получить нельзя
UnsupportedTemporalTypeException - если поле не поддерживается

get

public int get(TemporalField field)
Получает значение указанного поля из этой даты и времени как int.

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

Если поле является ChronoField, то запрос реализуется здесь. supported fields вернёт допустимые значения, основанные на этой дате и времени, за исключением NANO_OF_DAY, MICRO_OF_DAY, EPOCH_DAY и PROLEPTIC_MONTH, которые слишком велики, чтобы поместиться в int, и выбрасывают исключение UnsupportedTemporalTypeException. Все другие ChronoField экземпляры будут выбрасывать исключение UnsupportedTemporalTypeException.

Если поле не является ChronoField, то результат этого метода получается путём вызова TemporalField.getFrom(TemporalAccessor), передавая this в качестве аргумента. Возможно ли получить значение и что оно представляет, определяется полем.

Specified by:
get в интерфейсе TemporalAccessor
Parameters:
field - поле для получения, не null
Returns:
значение для поля
Throws:
DateTimeException - если значение для поля получить нельзя или значение находится за пределами допустимого диапазона значений для поля
UnsupportedTemporalTypeException - если поле не поддерживается или диапазон значений превышает int
ArithmeticException - если происходит переполнение чисел

getLong

public long getLong(TemporalField field)
Получает значение указанного поля из этой даты и времени как long.

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

Если поле является ChronoField, то запрос реализуется здесь. supported fields вернёт допустимые значения, основанные на этой дате и времени. Все другие ChronoField экземпляры будут выбрасывать исключение UnsupportedTemporalTypeException.

Если поле не является ChronoField, то результат этого метода получается путём вызова TemporalField.getFrom(TemporalAccessor), передавая this в качестве аргумента. Возможно ли получить значение и что оно представляет, определяется полем.

Specified by:
getLong в интерфейсе TemporalAccessor
Parameters:
field - поле для получения, не null
Returns:
значение для поля
Throws:
DateTimeException - если значение для поля получить нельзя
UnsupportedTemporalTypeException - если поле не поддерживается
ArithmeticException - если происходит переполнение чисел

toLocalDate

public LocalDate toLocalDate()
Получает LocalDate часть этой даты и времени.

Возвращает LocalDate с тем же годом, месяцем и днём, что и эта дата и время.

Specified by:
toLocalDate в интерфейсе ChronoLocalDateTime<LocalDate>
Returns:
часть даты этой даты и времени, не null

getYear

public int getYear()
Получает поле года.

Этот метод возвращает примитивное значение int для года.

Год, возвращаемый этим методом, является пролептическим согласно get(YEAR). Для получения года эры используйте get(YEAR_OF_ERA).

Returns:
год, от MIN_YEAR до MAX_YEAR

getMonthValue

public int getMonthValue()
Получает поле месяца от 1 до 12.

Этот метод возвращает месяц как int от 1 до 12. Код приложения часто понятнее, если используется перечисление Month, вызывая getMonth().

Returns:
месяц, от 1 до 12
See Also:
  • getMonth()

getMonth

public Month getMonth()
Получает поле месяца с помощью перечисления Month.

Этот метод возвращает перечисление Month для месяца. Это предотвращает путаницу относительно того, что означают int значения. Если вам нужен доступ к примитивному значению int, то перечисление предоставляет int value.

Returns:
месяц, не null
See Also:
  • getMonthValue()

getDayOfMonth

public int getDayOfMonth()
Получает поле дня месяца.

Этот метод возвращает примитивное значение int для дня месяца.

Returns:
день месяца, от 1 до 31

getDayOfYear

public int getDayOfYear()
Получает поле дня года.

Этот метод возвращает примитивное значение int для дня года.

Returns:
день года, от 1 до 365, или 366 в високосном году

getDayOfWeek

public DayOfWeek getDayOfWeek()
Получает поле дня недели, которое является перечислением DayOfWeek.

Этот метод возвращает перечисление DayOfWeek для дня недели. Это предотвращает путаницу относительно того, что означают int значения. Если вам нужен доступ к примитивному значению int, то перечисление предоставляет int value.

Дополнительную информацию можно получить из DayOfWeek. Это включает текстовые имена значений.

Returns:
день недели, не null

toLocalTime

public LocalTime toLocalTime()
Получает LocalTime часть этой даты и времени.

Возвращает LocalTime с тем же часом, минутой, секундой и наносекундой, что и эта дата и время.

Specified by:
toLocalTime в интерфейсе ChronoLocalDateTime<LocalDate>
Returns:
часть времени этой даты и времени, не null

getHour

public int getHour()
Получает поле часа.
Returns:
час, от 0 до 23

getMinute

public int getMinute()
Получает поле минуты.
Returns:
минута, от 0 до 59

getSecond

public int getSecond()
Получает поле секунды.
Returns:
секунда, от 0 до 59

getNano

public int getNano()
Получает поле наносекунды.
Returns:
наносекунда, от 0 до 999 999 999

с

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
Возвращает:
скопированную LocalDateTime, основанную на this с применённой корректировкой, не null
Исключения:
DateTimeException - если корректировка не может быть выполнена
ArithmeticException - если произошел переполнение чисел

с

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 - новое значение поля в результате
Возвращает:
скопированную LocalDateTime, основанную на this с установленным указанным полем, не null
Исключения:
DateTimeException - если поле не может быть установлено
UnsupportedTemporalTypeException - если поле не поддерживается
ArithmeticException - если произошел переполнение чисел

сГодом

public LocalDateTime withYear(int year)
Возвращает копию этой LocalDateTime с изменённым годом.

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

Этот экземпляр неизменяем и не изменяется в результате этого вызова метода.

Параметры:
year - год для установки в результате, от MIN_YEAR до MAX_YEAR
Возвращает:
скопированную LocalDateTime, основанную на этой дате-времени с запрошенным годом, не null
Исключения:
DateTimeException - если значение года недопустимо

сМесяцем

public LocalDateTime withMonth(int month)
Возвращает копию этой LocalDateTime с изменённым месяцем.

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

Этот экземпляр неизменяем и не изменяется в результате этого вызова метода.

Параметры:
month - месяц для установки в результате, от 1 (январь) до 12 (декабрь)
Возвращает:
скопированную LocalDateTime, основанную на этой дате-времени с запрошенным месяцем, не null
Исключения:
DateTimeException - если значение месяца недопустимо

сДнёмМесяца

public LocalDateTime withDayOfMonth(int dayOfMonth)
Возвращает копию этой LocalDateTime с изменённым днём месяца.

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

Этот экземпляр неизменяем и не изменяется в результате этого вызова метода.

Параметры:
dayOfMonth - день месяца для установки в результате, от 1 до 28-31
Возвращает:
скопированную LocalDateTime, основанную на этой дате-времени с запрошенным днём, не null
Исключения:
DateTimeException - если значение дня месяца недопустимо или если день месяца недопустим для месяца-года

сДнёмГода

public LocalDateTime withDayOfYear(int dayOfYear)
Возвращает копию этой LocalDateTime с изменённым днём года.

Если полученная дата-время недействительна, выбрасывается исключение.

Этот экземпляр неизменяем и не изменяется в результате этого вызова метода.

Параметры:
dayOfYear - день года для установки в результате, от 1 до 365-366
Возвращает:
скопированную LocalDateTime, основанную на этой дате с запрошенным днём, не null
Исключения:
DateTimeException - если значение дня года недопустимо или если день года недопустим для года

сЧасом

public LocalDateTime withHour(int hour)
Возвращает копию этой LocalDateTime с изменённым часом.

Этот экземпляр неизменяем и не изменяется в результате этого вызова метода.

Параметры:
hour - час для установки в результате, от 0 до 23
Возвращает:
скопированную LocalDateTime, основанную на этой дате-времени с запрошенным часом, не null
Исключения:
DateTimeException - если значение часа недопустимо

сМинутой

public LocalDateTime withMinute(int minute)
Возвращает копию этой LocalDateTime с изменённой минутой.

Этот экземпляр неизменяем и не изменяется в результате этого вызова метода.

Параметры:
minute - минута для установки в результате, от 0 до 59
Возвращает:
скопированную LocalDateTime, основанную на этой дате-времени с запрошенной минутой, не null
Исключения:
DateTimeException - если значение минуты недопустимо

сСекундой

public LocalDateTime withSecond(int second)
Возвращает копию этой LocalDateTime с изменённой секундой.

Этот экземпляр неизменяем и не изменяется в результате этого вызова метода.

Параметры:
second - секунда для установки в результате, от 0 до 59
Возвращает:
скопированную LocalDateTime, основанную на этой дате-времени с запрошенной секундой, не null
Исключения:
DateTimeException - если значение секунды недопустимо

сНаносекундой

public LocalDateTime withNano(int nanoOfSecond)
Возвращает копию этой LocalDateTime с изменённой наносекундой.

Этот экземпляр неизменяем и не изменяется в результате этого вызова метода.

Параметры:
nanoOfSecond - наносекунда для установки в результате, от 0 до 999 999 999
Возвращает:
скопированную LocalDateTime, основанную на этой дате-времени с запрошенной наносекундой, не null
Исключения:
DateTimeException - если значение наносекунды недопустимо

truncatedTo

public LocalDateTime truncatedTo(TemporalUnit unit)
Возвращает копию этого LocalDateTime с обнуленным временем.

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

Элемент должен иметь длительность, которая делится на длину стандартного дня без остатка. Это включает все предоставленные временные единицы в ChronoUnit и DAYS. Другие единицы выбрасывают исключение.

Данный экземпляр неизменяем и не затрагивается этим вызовом метода.

Parameters:
unit - единица для обнуления, не null
Returns:
копия LocalDateTime на основе этой даты и времени с обнуленным временем, не null
Throws:
DateTimeException - если обнуление невозможно
UnsupportedTemporalTypeException - если единица не поддерживается

plus

public LocalDateTime plus(TemporalAmount amountToAdd)
Возвращает копию этой даты и времени с добавлением указанного значения.

Это возвращает копию LocalDateTime на основе этой, с добавлением указанного значения. Значение обычно является Period или Duration, но может быть любого другого типа, реализующего интерфейс TemporalAmount.

Вычисление делегируется объекту значения с вызовом TemporalAmount.addTo(Temporal). Реализация значения свободна реализовывать добавление любым способом, однако обычно она обращается к plus(long, TemporalUnit). Обратитесь к документации реализации значения, чтобы определить, можно ли его успешно добавить.

Данный экземпляр неизменяем и не затрагивается этим вызовом метода.

Specified by:
plus в интерфейсе ChronoLocalDateTime<LocalDate>
Specified by:
plus в интерфейсе Temporal
Parameters:
amountToAdd - значение для добавления, не null
Returns:
копия LocalDateTime на основе этой даты и времени с выполненным добавлением, не null
Throws:
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 в качестве аргумента. В этом случае единица определяет, как и нужно ли выполнять добавление.

Данный экземпляр неизменяем и не затрагивается этим вызовом метода.

Specified by:
plus в интерфейсе ChronoLocalDateTime<LocalDate>
Specified by:
plus в интерфейсе Temporal
Parameters:
amountToAdd - количество единицы для добавления к результату, может быть отрицательным
unit - единица количества для добавления, не null
Returns:
копия LocalDateTime на основе этой даты и времени с добавлением указанного значения, не null
Throws:
DateTimeException - если добавление невозможно
UnsupportedTemporalTypeException - если единица не поддерживается
ArithmeticException - если произошел переполнение чисел

plusYears

public LocalDateTime plusYears(long years)
Возвращает копию этой LocalDateTime с добавлением указанного количества лет.

Этот метод добавляет указанное значение к полю лет в три шага:

  1. Добавить входные годы к полю года
  2. Проверить, является ли полученная дата недействительной
  3. Если необходимо, скорректировать день месяца до последнего допустимого дня

Например, 2008-02-29 (високосный год) плюс один год приведет к недействительной дате 2009-02-29 (обычный год). Вместо возвращения недопустимого результата вместо этого выбирается последний допустимый день месяца, 2009-02-28.

Данный экземпляр неизменяем и не затрагивается этим вызовом метода.

Parameters:
years - количество лет для добавления, может быть отрицательным
Returns:
копия LocalDateTime на основе этой даты и времени с добавлением лет, не null
Throws:
DateTimeException - если результат превышает поддерживаемый диапазон дат

plusMonths

public LocalDateTime plusMonths(long months)
Возвращает копию этой LocalDateTime с добавлением указанного количества месяцев.

Этот метод добавляет указанное количество к полю месяцев в три шага:

  1. Добавить входные месяцы к полю месяца
  2. Проверить, является ли полученная дата недействительной
  3. Если необходимо, скорректировать день месяца до последнего допустимого дня

Например, 2007-03-31 плюс один месяц приведет к недействительной дате 2007-04-31. Вместо возвращения недопустимого результата вместо этого выбирается последний допустимый день месяца, 2007-04-30.

Данный экземпляр неизменяем и не затрагивается этим вызовом метода.

Parameters:
months - количество месяцев для добавления, может быть отрицательным
Returns:
копия LocalDateTime на основе этой даты и времени с добавлением месяцев, не null
Throws:
DateTimeException - если результат превышает поддерживаемый диапазон дат

plusWeeks

public LocalDateTime plusWeeks(long weeks)
Возвращает копию этой LocalDateTime с добавлением указанного количества недель.

Этот метод добавляет указанное количество недель к полю дней, увеличивая поля месяца и года по мере необходимости, чтобы результат оставался допустимым. Результат является недействительным только в том случае, если превышен максимальный/минимальный год.

Например, 2008-12-31 плюс одна неделя приведет к 2009-01-07.

Данный экземпляр неизменяем и не затрагивается этим вызовом метода.

Parameters:
weeks - количество недель для добавления, может быть отрицательным
Returns:
копия LocalDateTime на основе этой даты и времени с добавлением недель, не null
Throws:
DateTimeException - если результат превышает поддерживаемый диапазон дат

plusDays

public LocalDateTime plusDays(long days)
Возвращает копию этой LocalDateTime с добавлением указанного количества дней.

Этот метод добавляет указанное количество к полю дней, увеличивая поля месяца и года по мере необходимости, чтобы результат оставался допустимым. Результат является недействительным только в том случае, если превышен максимальный/минимальный год.

Например, 2008-12-31 плюс один день приведет к 2009-01-01.

Данный экземпляр неизменяем и не затрагивается этим вызовом метода.

Parameters:
days - количество дней для добавления, может быть отрицательным
Returns:
копия LocalDateTime на основе этой даты и времени с добавлением дней, не null
Throws:
DateTimeException - если результат превышает поддерживаемый диапазон дат

plusHours

public LocalDateTime plusHours(long hours)
Возвращает копию этой LocalDateTime с добавлением указанного количества часов.

Данный экземпляр неизменяем и не затрагивается этим вызовом метода.

Parameters:
hours - количество часов для добавления, может быть отрицательным
Returns:
копия LocalDateTime на основе этой даты и времени с добавлением часов, не null
Throws:
DateTimeException - если результат превышает поддерживаемый диапазон дат

plusMinutes

public LocalDateTime plusMinutes(long minutes)
Возвращает копию этой LocalDateTime с добавлением указанного количества минут.

Данный экземпляр неизменяем и не затрагивается этим вызовом метода.

Parameters:
minutes - количество минут для добавления, может быть отрицательным
Returns:
копия LocalDateTime на основе этой даты и времени с добавлением минут, не null
Throws:
DateTimeException - если результат превышает поддерживаемый диапазон дат

plusSeconds

public LocalDateTime plusSeconds(long seconds)
Возвращает копию этой LocalDateTime с добавлением указанного количества секунд.

Данный экземпляр неизменяем и не затрагивается этим вызовом метода.

Parameters:
seconds - количество секунд для добавления, может быть отрицательным
Returns:
копия LocalDateTime на основе этой даты и времени с добавлением секунд, не null
Throws:
DateTimeException - если результат превышает поддерживаемый диапазон дат

plusNanos

public LocalDateTime plusNanos(long nanos)
Возвращает копию этого LocalDateTime с добавлением указанного количества наносекунд.

Этот экземпляр неизменяемый и не изменяется в результате этого вызова метода.

Parameters:
nanos - добавляемые наносекунды, может быть отрицательным значением
Returns:
LocalDateTime, основанный на этой дате и времени с добавленными наносекундами, не null
Throws:
DateTimeException - если результат выходит за пределы поддерживаемого диапазона дат

minus

public LocalDateTime minus(TemporalAmount amountToSubtract)
Возвращает копию этого объекта даты и времени с вычитанием указанного значения.

Возвращает LocalDateTime, основанный на этом объекте, с вычитанием указанного значения. Значение обычно является Period или Duration, но может быть любого другого типа, реализующего интерфейс TemporalAmount.

Вычисление делегируется объекту значения с помощью вызова TemporalAmount.subtractFrom(Temporal). Реализация значения свободна в реализации вычитания любым способом, однако она обычно вызывает minus(long, TemporalUnit). Обратитесь к документации реализации значения, чтобы определить, можно ли успешно вычесть его.

Этот экземпляр неизменяемый и не изменяется в результате этого вызова метода.

Specified by:
minus в интерфейсе ChronoLocalDateTime<LocalDate>
Specified by:
minus в интерфейсе Temporal
Parameters:
amountToSubtract - значение для вычитания, не null
Returns:
LocalDateTime, основанный на этой дате и времени с выполненным вычитанием, не null
Throws:
DateTimeException - если вычитание невозможно
ArithmeticException - если произошел переполнение числовых значений

minus

public LocalDateTime minus(long amountToSubtract, TemporalUnit unit)
Возвращает копию этого объекта даты и времени с вычитанием указанного значения.

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

Этот метод эквивалентен plus(long, TemporalUnit) с отрицанием значения. Обратитесь к этому методу для получения полного описания того, как работает сложение, и, следовательно, вычитание.

Этот экземпляр неизменяемый и не изменяется в результате этого вызова метода.

Specified by:
minus в интерфейсе ChronoLocalDateTime<LocalDate>
Specified by:
minus в интерфейсе Temporal
Parameters:
amountToSubtract - количество единиц для вычитания из результата, может быть отрицательным
unit - единица значения для вычитания, не null
Returns:
LocalDateTime, основанный на этой дате и времени с вычтенным указанным значением, не null
Throws:
DateTimeException - если вычитание невозможно
UnsupportedTemporalTypeException - если единица не поддерживается
ArithmeticException - если произошел переполнение числовых значений

minusYears

public LocalDateTime minusYears(long years)
Возвращает копию этого LocalDateTime с вычитанием указанного количества лет.

Этот метод вычитает указанное значение из поля "год" в трех шагах:

  1. Вычесть введённые годы из поля "год"
  2. Проверить, будет ли полученная дата недействительной
  3. При необходимости скорректировать день месяца до последнего допустимого дня

Например, 2008-02-29 (високосный год) минус один год приведет к недействительной дате 2007-02-29 (обычный год). Вместо возвращения недействительного результата, выбирается последний допустимый день месяца, 2007-02-28.

Этот экземпляр неизменяемый и не изменяется в результате этого вызова метода.

Parameters:
years - годы для вычитания, может быть отрицательным
Returns:
LocalDateTime, основанный на этой дате и времени с вычтенными годами, не null
Throws:
DateTimeException - если результат выходит за пределы поддерживаемого диапазона дат

minusMonths

public LocalDateTime minusMonths(long months)
Возвращает копию этого LocalDateTime с вычитанием указанного количества месяцев.

Этот метод вычитает указанное значение из поля "месяц" в трех шагах:

  1. Вычесть введённые месяцы из поля "месяц"
  2. Проверить, будет ли полученная дата недействительной
  3. При необходимости скорректировать день месяца до последнего допустимого дня

Например, 2007-03-31 минус один месяц приведет к недействительной дате 2007-02-31. Вместо возвращения недействительного результата, выбирается последний допустимый день месяца, 2007-02-28.

Этот экземпляр неизменяемый и не изменяется в результате этого вызова метода.

Parameters:
months - месяцы для вычитания, может быть отрицательным
Returns:
LocalDateTime, основанный на этой дате и времени с вычтенными месяцами, не null
Throws:
DateTimeException - если результат выходит за пределы поддерживаемого диапазона дат

minusWeeks

public LocalDateTime minusWeeks(long weeks)
Возвращает копию этого LocalDateTime с вычитанием указанного количества недель.

Этот метод вычитает указанное количество недель из поля "день", уменьшая поля "месяц" и "год" по мере необходимости, чтобы результат оставался допустимым. Результат является недопустимым только в том случае, если превышен максимальный/минимальный год.

Например, 2009-01-07 минус одна неделя приведет к 2008-12-31.

Этот экземпляр неизменяемый и не изменяется в результате этого вызова метода.

Parameters:
weeks - недели для вычитания, может быть отрицательным
Returns:
LocalDateTime, основанный на этой дате и времени с вычтенными неделями, не null
Throws:
DateTimeException - если результат выходит за пределы поддерживаемого диапазона дат

minusDays

public LocalDateTime minusDays(long days)
Возвращает копию этого LocalDateTime с вычитанием указанного количества дней.

Этот метод вычитает указанное значение из поля "день", уменьшая поля "месяц" и "год" по мере необходимости, чтобы результат оставался допустимым. Результат является недопустимым только в том случае, если превышен максимальный/минимальный год.

Например, 2009-01-01 минус один день приведет к 2008-12-31.

Этот экземпляр неизменяемый и не изменяется в результате этого вызова метода.

Parameters:
days - дни для вычитания, может быть отрицательным
Returns:
LocalDateTime, основанный на этой дате и времени с вычтенными днями, не null
Throws:
DateTimeException - если результат выходит за пределы поддерживаемого диапазона дат

minusHours

public LocalDateTime minusHours(long hours)
Возвращает копию этого LocalDateTime с вычитанием указанного количества часов.

Этот экземпляр неизменяемый и не изменяется в результате этого вызова метода.

Parameters:
hours - часы для вычитания, может быть отрицательным
Returns:
LocalDateTime, основанный на этой дате и времени с вычтенными часами, не null
Throws:
DateTimeException - если результат выходит за пределы поддерживаемого диапазона дат

minusMinutes

public LocalDateTime minusMinutes(long minutes)
Возвращает копию этого LocalDateTime с вычитанием указанного количества минут.

Этот экземпляр неизменяемый и не изменяется в результате этого вызова метода.

Parameters:
minutes - минуты для вычитания, может быть отрицательным
Returns:
LocalDateTime, основанный на этой дате и времени с вычтенными минутами, не null
Throws:
DateTimeException - если результат выходит за пределы поддерживаемого диапазона дат

minusSeconds

public LocalDateTime minusSeconds(long seconds)
Возвращает копию этого LocalDateTime с вычитанием указанного количества секунд.

Этот экземпляр неизменяемый и не изменяется в результате этого вызова метода.

Parameters:
seconds - секунды для вычитания, может быть отрицательным
Returns:
LocalDateTime, основанный на этой дате и времени с вычтенными секундами, не null
Throws:
DateTimeException - если результат выходит за пределы поддерживаемого диапазона дат

minusNanos

public LocalDateTime minusNanos(long nanos)
Возвращает копию этого LocalDateTime с вычитанием указанного количества наносекунд.

Этот экземпляр неизменяемый и не изменяется в результате этого вызова метода.

Parameters:
nanos - наносекунды для вычитания, может быть отрицательным
Returns:
LocalDateTime, основанный на этой дате и времени с вычтенными наносекундами, не null
Throws:
DateTimeException - если результат выходит за пределы поддерживаемого диапазона дат

запрос

public <R> R query(TemporalQuery<R> query)
Использует указанный запрос для получения информации об этой дате и времени.

Этот метод использует указанный объект стратегии запроса для получения результата. Объект стратегии определяет логику получения результата. Обратитесь к документации запроса для понимания результата этого метода.

Результат этого метода получается путем вызова метода 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, передаваемый в этот метод, преобразуется в 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 - если происходит переполнение числовых значений

форматировать

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/Гринвича для локальной даты и времени, как определено правилами часового пояса идентификатора часового пояса.

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

Чтобы получить более позднее смещение во время наложения, вызовите 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 в интерфейсе ChronoLocalDateTime<LocalDate>
Определено в:
compareTo в интерфейсе Comparable<ChronoLocalDateTime<?>>
Параметры:
other - другая дата и время для сравнения, не null
Возвращает:
значение сравнения, то есть результат сравнения этой локальной даты и времени с other локальной датой и временем и этой хронологии с other хронологией, возвращающее первое отличное от нуля значение, а в противном случае возвращающее ноль
См. также:
  • isBefore(java.time.chrono.ChronoLocalDateTime<?>)
  • isAfter(java.time.chrono.ChronoLocalDateTime<?>)

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().

Specified by:
isAfter в интерфейсе ChronoLocalDateTime<LocalDate>
Parameters:
other - другая дата-время для сравнения, не null
Returns:
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().

Specified by:
isBefore в интерфейсе ChronoLocalDateTime<LocalDate>
Parameters:
other - другая дата-время для сравнения, не null
Returns:
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().

Specified by:
isEqual в интерфейсе ChronoLocalDateTime<LocalDate>
Parameters:
other - другая дата-время для сравнения, не null
Returns:
true, если эта дата-время равна указанной дате-времени

equals

public boolean equals(Object obj)
Проверяет, равна ли эта дата-время другой дате-времени.

Сравнивает эту LocalDateTime с другой, гарантируя, что дата-время совпадает. Сравниваются только объекты типа LocalDateTime, другие типы возвращают false.

Specified by:
equals в интерфейсе ChronoLocalDateTime<LocalDate>
Overrides:
equals в классе Object
Parameters:
obj - объект для проверки, null возвращает false
Returns:
true, если эта дата-время равна другой дате-времени
See Also:
  • Object.hashCode()
  • HashMap

hashCode

public int hashCode()
Хеш-код для этой даты-времени.
Specified by:
hashCode в интерфейсе ChronoLocalDateTime<LocalDate>
Overrides:
hashCode в классе Object
Returns:
подходящий хеш-код
See Also:
  • 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:mm
  • uuuu-MM-dd'T'HH:mm:ss
  • uuuu-MM-dd'T'HH:mm:ss.SSS
  • uuuu-MM-dd'T'HH:mm:ss.SSSSSS
  • uuuu-MM-dd'T'HH:mm:ss.SSSSSSSSS
Использованный формат будет самым коротким, который выводит полное значение времени, где пропущенные части предполагаются нулевыми.
Specified by:
toString в интерфейсе ChronoLocalDateTime<LocalDate>
Overrides:
toString в классе Object
Returns:
строковое представление этой даты-времени, не null

© 1993, 2025, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://download.java.net/java/early_access/jdk24/docs/api/java.base/java/time/LocalDateTime.html

Spec-Zone.ru

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