Класс 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

Максимально поддерживаемая LocalDateTime, '+999999999-12-31T23:59:59.999999999'.

static 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 toString()

Выводит эту дату и время в виде String, например, 2007-12-03T10:15:30.

LocalDateTime truncatedTo​(TemporalUnit unit)

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

long until​(Temporal endExclusive, TemporalUnit unit)

Вычисляет количество времени до другой даты и времени в терминах указанной единицы.

LocalDateTime with​(TemporalAdjuster adjuster)

Возвращает скорректированную копию этой даты и времени.

LocalDateTime with​(TemporalField field, long newValue)

Возвращает копию этой даты и времени с указанным полем, установленным на новое значение.

LocalDateTime withDayOfMonth​(int dayOfMonth)

Возвращает копию этого LocalDateTime с изменённым днём месяца.

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 с изменённым годом.

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

Параметры:
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.

Параметры:
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)

Проверяет, поддерживается ли указанный элемент измерения.

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

Если элемент измерения является ChronoUnit, запрос выполняется здесь. Поддерживаемые элементы измерения:

  • NANOS
  • MICROS
  • MILLIS
  • SECONDS
  • MINUTES
  • HOURS
  • HALF_DAYS
  • DAYS
  • WEEKS
  • MONTHS
  • YEARS
  • DECADES
  • CENTURIES
  • MILLENNIA
  • ERAS
Все остальные ChronoUnit возвращают ложь.

Если элемент измерения не является 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 и вызовут UnsupportedTemporalTypeException. Все остальные 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

с

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 - если происходит переполнение числовых значений

с

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 - если происходит переполнение числовых значений

сГодом

public LocalDateTime withYear(int year)

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

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

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

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

сМесяцем

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 с добавленным указанным количеством лет.

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

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

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

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

Параметры:
years - годы для добавления, могут быть отрицательными
Возвращает:
копия LocalDateTime на основе этой даты и времени с добавлением лет, не null
Исключение:
DateTimeException - если результат выходит за поддерживаемый диапазон дат

plusMonths

public LocalDateTime plusMonths(long months)

Возвращает копию этой LocalDateTime с добавленным указанным количеством месяцев.

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

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

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

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

Параметры:
months - месяцы для добавления, могут быть отрицательными
Возвращает:
копия LocalDateTime на основе этой даты и времени с добавлением месяцев, не null
Исключение:
DateTimeException - если результат выходит за поддерживаемый диапазон дат

plusWeeks

public LocalDateTime plusWeeks(long weeks)

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

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

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

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

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

plusDays

public LocalDateTime plusDays(long days)

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

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

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

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

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

plusHours

public LocalDateTime plusHours(long hours)

Возвращает копию этого LocalDateTime с указанным количеством часов, добавленных к текущему значению.

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

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

plusMinutes

public LocalDateTime plusMinutes(long minutes)

Возвращает копию этого LocalDateTime с указанным количеством минут, добавленных к текущему значению.

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

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

plusSeconds

public LocalDateTime plusSeconds(long seconds)

Возвращает копию этого LocalDateTime с указанным количеством секунд, добавленных к текущему значению.

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

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

plusNanos

public LocalDateTime plusNanos(long nanos)

Возвращает копию этого LocalDateTime с указанным количеством наносекунд, добавленных к текущему значению.

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

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

minus

public LocalDateTime minus(TemporalAmount amountToSubtract)

Возвращает копию этой даты и времени с указанным значением, вычтенным из текущего значения.

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

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

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

Определено в:
minus в интерфейсе ChronoLocalDateTime<LocalDate>
Определено в:
minus в интерфейсе Temporal
Параметры:
amountToSubtract - значение для вычитания, не null
Возвращает:
a 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 с указанным числом лет, вычтенных.

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

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

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

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

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

minusMonths

public LocalDateTime minusMonths(long months)

Возвращает копию этого LocalDateTime с указанным числом месяцев, вычтенных.

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

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

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

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

Параметры:
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
Возвращает:
объект zoned date-time, сформированный из этого date-time, не null

compareTo

public int compareTo(ChronoLocalDateTime<?> other)

Сравнивает этот date-time с другим date-time.

Сравнение в основном основано на date-time, от самого раннего до самого позднего. Оно «совместимо с equals», как определено в Comparable.

Если все сравниваемые date-time являются экземплярами LocalDateTime, сравнение будет основано исключительно на date-time. Если некоторые сравниваемые даты находятся в разных хронологиях, то учитывается и хронология, см. ChronoLocalDateTime.compareTo(java.time.chrono.ChronoLocalDateTime<?>).

Указано в:
compareTo в интерфейсе ChronoLocalDateTime<LocalDate>
Указано в:
compareTo в интерфейсе Comparable<ChronoLocalDateTime<?>>
Параметры:
other - другой date-time для сравнения, не null
Возвращает:
значение компаратора, отрицательное, если меньше, положительное, если больше

isAfter

public boolean isAfter(ChronoLocalDateTime<?> other)

Проверяет, является ли этот date-time после указанного date-time.

Проверяет, представляет ли этот date-time точку на временной шкале позже, чем другой date-time.

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

Этот метод учитывает только положение двух date-time на локальной временной шкале. Он не учитывает хронологию или календарную систему. Это отличается от сравнения в compareTo(ChronoLocalDateTime), но соответствует подходу в ChronoLocalDateTime.timeLineOrder().

Указано в:
isAfter в интерфейсе ChronoLocalDateTime<LocalDate>
Параметры:
other - другой date-time для сравнения, не null
Возвращает:
true, если этот date-time после указанного date-time

isBefore

public boolean isBefore(ChronoLocalDateTime<?> other)

Проверяет, является ли этот date-time до указанного date-time.

Проверяет, представляет ли этот date-time точку на временной шкале раньше, чем другой date-time.

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

Этот метод учитывает только положение двух date-time на локальной временной шкале. Он не учитывает хронологию или календарную систему. Это отличается от сравнения в compareTo(ChronoLocalDateTime), но соответствует подходу в ChronoLocalDateTime.timeLineOrder().

Указано в:
isBefore в интерфейсе ChronoLocalDateTime<LocalDate>
Параметры:
other - другой date-time для сравнения, не null
Возвращает:
true, если этот date-time до указанного date-time

isEqual

public boolean isEqual(ChronoLocalDateTime<?> other)

Проверяет, равен ли этот date-time указанному date-time.

Проверяет, представляет ли этот date-time ту же точку на локальной временной шкале, что и другой date-time.

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

Этот метод учитывает только положение двух date-time на локальной временной шкале. Он не учитывает хронологию или календарную систему. Это отличается от сравнения в compareTo(ChronoLocalDateTime), но соответствует подходу в ChronoLocalDateTime.timeLineOrder().

Указано в:
isEqual в интерфейсе ChronoLocalDateTime<LocalDate>
Параметры:
other - другой date-time для сравнения, не null
Возвращает:
true, если этот date-time равен указанному date-time

equals

public boolean equals(Object obj)

Проверяет, равен ли этот date-time другому date-time.

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

Указано в:
equals в интерфейсе ChronoLocalDateTime<LocalDate>
Переопределяет:
equals в классе Object
Параметры:
obj - объект для проверки, null возвращает false
Возвращает:
true, если этот равен другому date-time
См. также:
Object.hashCode(), HashMap

hashCode

public int hashCode()

Хэш-код для этого date-time.

Указано в:
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: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
Используемый формат будет самым коротким, который выводит полное значение времени, где пропущенные части подразумеваются равными нулю.
Определено в:
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.
https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/time/LocalDateTime.html

Spec-Zone .ru
спецификации, руководства, описания, API