Класс LocalDateTime
- Все реализуемые интерфейсы:
-
Serializable,Comparable<ChronoLocalDateTime<?>>,ChronoLocalDateTime<LocalDate>,Temporal,TemporalAccessor,TemporalAdjuster
public final class LocalDateTime extends Object implements Temporal, TemporalAdjuster, ChronoLocalDateTime<LocalDate>, Serializable
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 |
Настраивает указанный временной объект на совпадение даты и времени с этим объектом. |
OffsetDateTime |
atOffset |
Объединяет эту дату и время со смещением, чтобы создать OffsetDateTime. |
ZonedDateTime |
atZone |
Объединяет эту дату и время с часовым поясом, чтобы создать ZonedDateTime. |
int |
compareTo |
Сравнивает эту дату и время с другой датой и временем. |
boolean |
equals |
Проверяет, равна ли эта дата и время другой дате и времени. |
String |
format |
Форматирует эту дату и время с использованием указанного форматировщика. |
static LocalDateTime |
from |
Получает экземпляр LocalDateTime из временного объекта. |
int |
get |
Получает значение указанного поля из этой даты и времени в виде int. |
int |
getDayOfMonth() |
Получает поле день месяца. |
DayOfWeek |
getDayOfWeek() |
Получает поле день недели, которое является перечислением DayOfWeek. |
int |
getDayOfYear() |
Получает поле день года. |
int |
getHour() |
Получает поле час суток. |
long |
getLong |
Получает значение указанного поля из этой даты и времени в виде long. |
int |
getMinute() |
Получает поле минута часа. |
Month |
getMonth() |
Получает поле месяц года, используя перечисление Month. |
int |
getMonthValue() |
Получает поле месяц года от 1 до 12. |
int |
getNano() |
Получает поле наносекунда секунды. |
int |
getSecond() |
Получает поле секунда минуты. |
int |
getYear() |
Получает поле год. |
int |
hashCode() |
Код хэша для этой даты и времени. |
boolean |
isAfter |
Проверяет, следует ли эта дата и время после указанной даты и времени. |
boolean |
isBefore |
Проверяет, предшествует ли эта дата и время указанной дате и времени. |
boolean |
isEqual |
Проверяет, равна ли эта дата и время указанной дате и времени. |
boolean |
isSupported |
Проверяет, поддерживается ли указанное поле. |
boolean |
isSupported |
Проверяет, поддерживается ли указанный единица измерения. |
LocalDateTime |
minus |
Возвращает копию этой даты и времени с указанным значением, вычтенным. |
LocalDateTime |
minus |
Возвращает копию этой даты и времени с указанным значением, вычтенным. |
LocalDateTime |
minusDays |
Возвращает копию этого LocalDateTime с указанным числом дней, вычтенных. |
LocalDateTime |
minusHours |
Возвращает копию этого LocalDateTime с указанным числом часов, вычтенных. |
LocalDateTime |
minusMinutes |
Возвращает копию этого LocalDateTime с указанным числом минут, вычтенных. |
LocalDateTime |
minusMonths |
Возвращает копию этого LocalDateTime с указанным числом месяцев, вычтенных. |
LocalDateTime |
minusNanos |
Возвращает копию этого LocalDateTime с указанным числом наносекунд, вычтенных. |
LocalDateTime |
minusSeconds |
Возвращает копию этого LocalDateTime с указанным числом секунд, вычтенных. |
LocalDateTime |
minusWeeks |
Возвращает копию этого LocalDateTime с указанным числом недель, вычтенных. |
LocalDateTime |
minusYears |
Возвращает копию этого LocalDateTime с указанным числом лет, вычтенных. |
static LocalDateTime |
now() |
Получает текущую дату и время с системных часов в часовом поясе по умолчанию. |
static LocalDateTime |
now |
Получает текущую дату и время с указанных часов. |
static LocalDateTime |
now |
Получает текущую дату и время с системных часов в указанном часовом поясе. |
static LocalDateTime |
of |
Получает экземпляр LocalDateTime из года, месяца, дня, часа и минуты, устанавливая секунды и наносекунды в ноль. |
static LocalDateTime |
of |
Получает экземпляр LocalDateTime из года, месяца, дня, часа, минуты и секунды, устанавливая наносекунды в ноль. |
static LocalDateTime |
of |
Получает экземпляр LocalDateTime из года, месяца, дня, часа, минуты, секунды и наносекунды. |
static LocalDateTime |
of |
Получает экземпляр LocalDateTime из года, месяца, дня, часа и минуты, устанавливая секунды и наносекунды в ноль. |
static LocalDateTime |
of |
Получает экземпляр LocalDateTime из года, месяца, дня, часа, минуты и секунды, устанавливая наносекунды в ноль. |
static LocalDateTime |
of |
Получает экземпляр LocalDateTime из года, месяца, дня, часа, минуты, секунды и наносекунды. |
static LocalDateTime |
of |
Получает экземпляр LocalDateTime из даты и времени. |
static LocalDateTime |
ofEpochSecond |
Получает экземпляр LocalDateTime, используя секунды с эпохи 1970-01-01T00:00:00Z. |
static LocalDateTime |
ofInstant |
Получает экземпляр LocalDateTime из Instant и идентификатора часового пояса. |
static LocalDateTime |
parse |
Получает экземпляр LocalDateTime из текстовой строки, такой как 2007-12-03T10:15:30. |
static LocalDateTime |
parse |
Получает экземпляр LocalDateTime из текстовой строки с использованием определенного форматировщика. |
LocalDateTime |
plus |
Возвращает копию этой даты и времени с указанным значением, добавленным. |
LocalDateTime |
plus |
Возвращает копию этой даты и времени с указанным значением, добавленным. |
LocalDateTime |
plusDays |
Возвращает копию этого LocalDateTime с указанным числом дней, добавленных. |
LocalDateTime |
plusHours |
Возвращает копию этого LocalDateTime с указанным числом часов, добавленных. |
LocalDateTime |
plusMinutes |
Возвращает копию этого LocalDateTime с указанным числом минут, добавленных. |
LocalDateTime |
plusMonths |
Возвращает копию этого LocalDateTime с указанным числом месяцев, добавленных. |
LocalDateTime |
plusNanos |
Возвращает копию этого LocalDateTime с указанным числом наносекунд, добавленных. |
LocalDateTime |
plusSeconds |
Возвращает копию этого LocalDateTime с указанным числом секунд, добавленных. |
LocalDateTime |
plusWeeks |
Возвращает копию этого LocalDateTime с указанным числом недель, добавленных. |
LocalDateTime |
plusYears |
Возвращает копию этого LocalDateTime с указанным числом лет, добавленных. |
<R> R |
query |
Запрашивает эту дату и время с использованием указанного запроса. |
ValueRange |
range |
Получает диапазон допустимых значений для указанного поля. |
LocalDate |
toLocalDate() |
Получает часть LocalDate этой даты и времени. |
LocalTime |
toLocalTime() |
Получает часть LocalTime этой даты и времени. |
String |
truncatedTo |
Выводит эту дату и время как String, например, 2007-12-03T10:15:30. |
LocalDateTime |
until |
Возвращает копию этого LocalDateTime с обнуленным временем. |
long |
with |
Вычисляет количество времени до другой даты и времени в терминах указанной единицы. |
LocalDateTime |
with |
Возвращает скорректированную копию этой даты и времени. |
LocalDateTime |
withDayOfMonth |
Возвращает копию этой даты и времени с указанным полем, установленным на новое значение. |
LocalDateTime |
withDayOfYear |
Возвращает копию этого LocalDateTime с изменённым днём месяца. |
LocalDateTime |
withHour |
Возвращает копию этого LocalDateTime с изменённым днём года. |
LocalDateTime |
withMinute |
Возвращает копию этого LocalDateTime с изменённым часом дня. |
LocalDateTime |
withMonth |
Возвращает копию этого LocalDateTime с изменённой минутой часа. |
LocalDateTime |
withNano |
Возвращает копию этого LocalDateTime с изменённым месяцем года. |
LocalDateTime |
withSecond |
Возвращает копию этого LocalDateTime с изменённым наносекундами секунды. |
LocalDateTime |
withYear |
Возвращает копию этого LocalDateTime с изменённой секундой минуты. |
LocalDateTime |
withNano |
Возвращает копию этого 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()
Этот метод возвращает месяц как int от 1 до 12. Код приложения часто понятнее, если используется перечисление Month, вызывая getMonth().
- Returns:
- месяц, от 1 до 12
- See Also:
getMonth
public Month getMonth()
Month. Этот метод возвращает перечисление Month для месяца. Это предотвращает путаницу относительно того, что означают int значения. Если вам нужен доступ к примитивному значению int, то перечисление предоставляет int value.
- Returns:
- месяц, не null
- See Also:
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 с добавлением указанного количества лет. Этот метод добавляет указанное значение к полю лет в три шага:
- Добавить входные годы к полю года
- Проверить, является ли полученная дата недействительной
- Если необходимо, скорректировать день месяца до последнего допустимого дня
Например, 2008-02-29 (високосный год) плюс один год приведет к недействительной дате 2009-02-29 (обычный год). Вместо возвращения недопустимого результата вместо этого выбирается последний допустимый день месяца, 2009-02-28.
Данный экземпляр неизменяем и не затрагивается этим вызовом метода.
- Parameters:
-
years- количество лет для добавления, может быть отрицательным - Returns:
- копия
LocalDateTimeна основе этой даты и времени с добавлением лет, не null - Throws:
-
DateTimeException- если результат превышает поддерживаемый диапазон дат
plusMonths
public LocalDateTime plusMonths(long months)
LocalDateTime с добавлением указанного количества месяцев. Этот метод добавляет указанное количество к полю месяцев в три шага:
- Добавить входные месяцы к полю месяца
- Проверить, является ли полученная дата недействительной
- Если необходимо, скорректировать день месяца до последнего допустимого дня
Например, 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 с вычитанием указанного количества лет. Этот метод вычитает указанное значение из поля "год" в трех шагах:
- Вычесть введённые годы из поля "год"
- Проверить, будет ли полученная дата недействительной
- При необходимости скорректировать день месяца до последнего допустимого дня
Например, 2008-02-29 (високосный год) минус один год приведет к недействительной дате 2007-02-29 (обычный год). Вместо возвращения недействительного результата, выбирается последний допустимый день месяца, 2007-02-28.
Этот экземпляр неизменяемый и не изменяется в результате этого вызова метода.
- Parameters:
-
years- годы для вычитания, может быть отрицательным - Returns:
LocalDateTime, основанный на этой дате и времени с вычтенными годами, не null- Throws:
-
DateTimeException- если результат выходит за пределы поддерживаемого диапазона дат
minusMonths
public LocalDateTime minusMonths(long months)
LocalDateTime с вычитанием указанного количества месяцев. Этот метод вычитает указанное значение из поля "месяц" в трех шагах:
- Вычесть введённые месяцы из поля "месяц"
- Проверить, будет ли полученная дата недействительной
- При необходимости скорректировать день месяца до последнего допустимого дня
Например, 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хронологией, возвращающее первое отличное от нуля значение, а в противном случае возвращающее ноль - См. также:
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:
hashCode
public int hashCode()
- Specified by:
-
hashCodeв интерфейсеChronoLocalDateTime<LocalDate> - Overrides:
-
hashCodeв классеObject - Returns:
- подходящий хеш-код
- See Also:
toString
public String toString()
String, например, 2007-12-03T10:15:30. Вывод будет в одном из следующих форматов ISO-8601:
uuuu-MM-dd'T'HH:mmuuuu-MM-dd'T'HH:mm:ssuuuu-MM-dd'T'HH:mm:ss.SSSuuuu-MM-dd'T'HH:mm:ss.SSSSSSuuuu-MM-dd'T'HH:mm:ss.SSSSSSSSS
- 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