Класс 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 |
toString() |
Выводит эту дату и время в виде String, например 2007-12-03T10:15:30. |
LocalDateTime |
truncatedTo |
Возвращает копию этого LocalDateTime с усечённым временем. |
long |
until |
Вычисляет промежуток времени до другой даты и времени в указанных единицах. |
LocalDateTime |
with |
Возвращает скорректированную копию этой даты и времени. |
LocalDateTime |
with |
Возвращает копию этой даты и времени с указанным полем, установленным на новое значение. |
LocalDateTime |
withDayOfMonth |
Возвращает копию этого LocalDateTime с изменённым днём месяца. |
LocalDateTime |
withDayOfYear |
Возвращает копию этого LocalDateTime с изменённым днём года. |
LocalDateTime |
withHour |
Возвращает копию этого LocalDateTime с изменённым часом. |
LocalDateTime |
withMinute |
Возвращает копию этого LocalDateTime с изменённой минутой. |
LocalDateTime |
withMonth |
Возвращает копию этого LocalDateTime с изменённым месяцем. |
LocalDateTime |
withNano |
Возвращает копию этого LocalDateTime с изменёнными наносекундами. |
LocalDateTime |
withSecond |
Возвращает копию этого LocalDateTime с изменённой секундой. |
LocalDateTime |
withYear |
Возвращает копию этого 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- если поле не поддерживается
получить
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()
Этот метод возвращает месяц как int от 1 до 12. Прикладной код часто становится понятнее, если используется перечисление Month, вызывая getMonth().
- Возвращает:
- месяц, от 1 до 12
- См. также:
getMonth
public Month getMonth()
Month. Этот метод возвращает перечисление Month для месяца. Это позволяет избежать путаницы, какие int значения означают. Если вам нужен доступ к примитивному значению int, то перечисление предоставляет int value.
- Возвращает:
- месяц, не null
- См. также:
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)
Это возвращает копию, основанную на этой, с изменённым значением для указанного поля. Это может быть использовано для изменения любого поддерживаемого поля, такого как год, месяц или день месяца. Если установить значение невозможно, потому что поле не поддерживается или по какой-либо другой причине, выбрасывается исключение.
В некоторых случаях изменение указанного поля может привести к тому, что результирующая дата-время станет недействительной, например, изменение месяца с 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. Другие единицы времени вызывают исключение.
Этот экземпляр неизменяемый и не изменяется этим вызовом метода.
- Параметры:
-
unit- тип для усечения, не null - Возвращает:
- копию
LocalDateTime, основанную на этой дате-времени с усечённым временем, не null - Исключения:
-
DateTimeException- если усечение невозможно -
UnsupportedTemporalTypeException- если тип не поддерживается
plus
public LocalDateTime plus(TemporalAmount amountToAdd)
Это возвращает копию, основанную на этой, с добавлением указанного количества. Количество обычно является 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)
Возвращает новую копию, основанную на этом объекте, с добавленным значением, выраженным в указанных единицах измерения. Если добавление невозможно, например, из-за неподдерживаемых единиц измерения или по другим причинам, выбрасывается исключение.
Если поле относится к типу 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 - Параметры:
-
amountToAdd- количество единиц измерения для добавления к результату, может быть отрицательным -
unit- единицы измерения добавляемого значения, не null - Возвращает:
- новый объект DateTime, основанный на этом объекте, с добавленным указанным значением, не null
- Исключение:
-
DateTimeException- если добавление невозможно -
UnsupportedTemporalTypeException- если единицы измерения не поддерживаются -
ArithmeticException- если произошел численный переполнение
plusYears
public LocalDateTime plusYears(long years)
LocalDateTime с добавленным указанным числом лет. Этот метод добавляет указанное значение к полю лет в три этапа:
- Добавить входные годы к полю год
- Проверить, является ли полученная дата недействительной
- Если необходимо, скорректировать день месяца на последний допустимый день
Например, 2008-02-29 (високосный год) плюс один год приведет к недействительной дате 2009-02-29 (невисокосный год). Вместо возвращения недействительного результата, вместо этого выбирается последний допустимый день месяца, 2009-02-28.
Этот экземпляр неизменяемый и не изменяется в результате этого вызова.
- Параметры:
-
years- количество лет для добавления, может быть отрицательным - Возвращает:
- новый объект DateTime, основанный на этом объекте, с добавленными годами, не null
- Исключение:
-
DateTimeException- если результат выходит за пределы поддерживаемого диапазона дат
plusMonths
public LocalDateTime plusMonths(long months)
LocalDateTime с добавленным указанным числом месяцев. Этот метод добавляет указанное значение к полю месяцев в три этапа:
- Добавить входные месяцы к полю месяца
- Проверить, является ли полученная дата недействительной
- Если необходимо, скорректировать день месяца на последний допустимый день
Например, 2007-03-31 плюс один месяц приведет к недействительной дате 2007-04-31. Вместо возвращения недействительного результата, вместо этого выбирается последний допустимый день месяца, 2007-04-30.
Этот экземпляр неизменяемый и не изменяется в результате этого вызова.
- Параметры:
-
months- количество месяцев для добавления, может быть отрицательным - Возвращает:
- новый объект DateTime, основанный на этом объекте, с добавленными месяцами, не null
- Исключение:
-
DateTimeException- если результат выходит за пределы поддерживаемого диапазона дат
plusWeeks
public LocalDateTime plusWeeks(long weeks)
LocalDateTime с добавленным указанным числом недель. Этот метод добавляет указанное количество недель к полю дней, увеличивая поля месяца и года при необходимости, чтобы результат оставался корректным. Результат недействителен только в том случае, если превышен максимальный/минимальный год.
Например, 2008-12-31 плюс одна неделя приведет к 2009-01-07.
Этот экземпляр неизменяемый и не изменяется в результате этого вызова.
- Параметры:
-
weeks- количество недель для добавления, может быть отрицательным - Возвращает:
- новый объект DateTime, основанный на этом объекте, с добавленными неделями, не null
- Исключение:
-
DateTimeException- если результат выходит за пределы поддерживаемого диапазона дат
plusDays
public LocalDateTime plusDays(long days)
LocalDateTime с добавленным указанным числом дней. Этот метод добавляет указанное значение к полю дней, увеличивая поля месяца и года при необходимости, чтобы результат оставался корректным. Результат недействителен только в том случае, если превышен максимальный/минимальный год.
Например, 2008-12-31 плюс один день приведет к 2009-01-01.
Этот экземпляр неизменяемый и не изменяется в результате этого вызова.
- Параметры:
-
days- количество дней для добавления, может быть отрицательным - Возвращает:
- новый объект DateTime, основанный на этом объекте, с добавленными днями, не null
- Исключение:
-
DateTimeException- если результат выходит за пределы поддерживаемого диапазона дат
plusHours
public LocalDateTime plusHours(long hours)
LocalDateTime с добавленным указанным числом часов. Этот экземпляр неизменяемый и не изменяется в результате этого вызова.
- Параметры:
-
hours- количество часов для добавления, может быть отрицательным - Возвращает:
- новый объект DateTime, основанный на этом объекте, с добавленными часами, не null
- Исключение:
-
DateTimeException- если результат выходит за пределы поддерживаемого диапазона дат
plusMinutes
public LocalDateTime plusMinutes(long minutes)
LocalDateTime с добавленным указанным числом минут. Этот экземпляр неизменяемый и не изменяется в результате этого вызова.
- Параметры:
-
minutes- количество минут для добавления, может быть отрицательным - Возвращает:
- новый объект DateTime, основанный на этом объекте, с добавленными минутами, не null
- Исключение:
-
DateTimeException- если результат выходит за пределы поддерживаемого диапазона дат
plusSeconds
public LocalDateTime plusSeconds(long seconds)
LocalDateTime с добавленным указанным числом секунд. Этот экземпляр неизменяемый и не изменяется в результате этого вызова.
- Параметры:
-
seconds- количество секунд для добавления, может быть отрицательным - Возвращает:
- новый объект DateTime, основанный на этом объекте, с добавленными секундами, не null
- Исключение:
-
DateTimeException- если результат выходит за пределы поддерживаемого диапазона дат
plusNanos
public LocalDateTime plusNanos(long nanos)
LocalDateTime с добавленным указанным числом наносекунд. Этот экземпляр неизменяемый и не изменяется в результате этого вызова.
- Параметры:
-
nanos- количество наносекунд для добавления, может быть отрицательным - Возвращает:
- новый объект DateTime, основанный на этом объекте, с добавленными наносекундами, не null
- Исключение:
-
DateTimeException- если результат выходит за пределы поддерживаемого диапазона дат
minus
public LocalDateTime minus(TemporalAmount amountToSubtract)
Возвращает новый объект DateTime, основанный на этом объекте, с вычетом указанного значения. Значение обычно является Period или Duration, но может быть любым другим типом, реализующим интерфейс TemporalAmount.
Вычисление делегируется объекту значения путем вызова TemporalAmount.subtractFrom(Temporal). Реализация значения свободна реализовать вычитание любым способом, однако обычно она вызывает minus(long, TemporalUnit). Обратитесь к документации реализации значения, чтобы определить, можно ли успешно выполнить вычитание.
Этот экземпляр неизменяемый и не изменяется в результате этого вызова.
- Specified by:
-
minusв интерфейсеChronoLocalDateTime<LocalDate> - Specified by:
-
minusв интерфейсеTemporal - Параметры:
-
amountToSubtract- значение для вычитания, не null - Возвращает:
- новый объект DateTime, основанный на этом объекте, с выполненным вычитанием, не null
- Исключение:
-
DateTimeException- если вычитание невозможно -
ArithmeticException- если произошел численный переполнение
minus
public LocalDateTime minus(long amountToSubtract, TemporalUnit unit)
Это возвращает LocalDateTime, основанную на этом объекте, с вычтенной величиной в терминах единицы измерения. Если вычесть величину невозможно, потому что единица измерения не поддерживается или по какой-либо другой причине, выбрасывается исключение.
Этот метод эквивалентен методу plus(long, TemporalUnit) с отрицательным значением величины. Обратитесь к этому методу для получения полного описания того, как работает сложение, а также вычитание.
Этот экземпляр неизменяем и не затрагивается этим вызовом метода.
- Specified by:
-
minusв интерфейсеChronoLocalDateTime<LocalDate> - Specified by:
-
minusв интерфейсеTemporal - Параметры:
-
amountToSubtract- количество единиц для вычитания из результата, может быть отрицательным -
unit- единица измерения величины для вычитания, не null - Возвращает:
- объект
LocalDateTimeна основе этого объекта даты и времени с вычтенным указанным значением, не null - Использует исключение:
-
DateTimeException- если вычитание невозможно -
UnsupportedTemporalTypeException- если единица измерения не поддерживается -
ArithmeticException- если происходит переполнение
minusYears
public LocalDateTime minusYears(long years)
LocalDateTime с вычтенным указанным количеством лет. Этот метод вычитает указанное значение из поля "год" в трех шагах:
- Вычитание введённого количества лет из поля "год"
- Проверка на то, является ли полученная дата недействительной
- Коррекция дня месяца до последнего допустимого дня, если необходимо
Например, 2008-02-29 (високосный год) минус один год приведет к недействительной дате 2007-02-29 (обычный год). Вместо возвращения недействительного результата, выбирается последний допустимый день месяца, 2007-02-28.
Этот экземпляр неизменяем и не затрагивается этим вызовом метода.
- Параметры:
-
years- годы для вычитания, может быть отрицательным - Возвращает:
- объект
LocalDateTimeна основе этого объекта даты и времени с вычтенными годами, не null - Использует исключение:
-
DateTimeException- если результат выходит за пределы поддерживаемого диапазона дат
minusMonths
public LocalDateTime minusMonths(long months)
LocalDateTime с вычтенным указанным количеством месяцев. Этот метод вычитает указанное количество из поля "месяц" в трех шагах:
- Вычитание введённого количества месяцев из поля "месяц"
- Проверка на то, является ли полученная дата недействительной
- Коррекция дня месяца до последнего допустимого дня, если необходимо
Например, 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 в качестве аргумента.
- Specified by:
-
queryв интерфейсеChronoLocalDateTime<LocalDate> - Specified by:
-
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);
Этот экземпляр неизменяем и не затрагивается этим вызовом метода.
- Specified by:
-
adjustIntoв интерфейсеChronoLocalDateTime<LocalDate> - Specified by:
-
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 в качестве первого аргумента и преобразованный входной временной объект — как второй аргумент.
Этот экземпляр неизменяемый и не изменяется в результате вызова этого метода.
- Specified by:
-
untilв интерфейсеTemporal - Parameters:
-
endExclusive- конечная дата, исключая ее, которая преобразуется вLocalDateTime, не null -
unit- единица измерения временного интервала, не null - Returns:
- длительность между этой датой и временем и конечной датой и временем
- Throws:
-
DateTimeException- если временной интервал нельзя вычислить или конечный временной объект нельзя преобразовать вLocalDateTime -
UnsupportedTemporalTypeException- если единица не поддерживается -
ArithmeticException- если происходит переполнение
format
public String format(DateTimeFormatter formatter)
Эта дата и время будут переданы форматеру для получения строки.
- Specified by:
-
formatв интерфейсеChronoLocalDateTime<LocalDate> - Parameters:
-
formatter- используемый форматер, не null - Returns:
- строка отформатированной даты и времени, не null
- Throws:
-
DateTimeException- если произошла ошибка во время печати
atOffset
public OffsetDateTime atOffset(ZoneOffset offset)
OffsetDateTime. Это возвращает OffsetDateTime, образованную из этой даты и времени по указанному смещению. Все возможные комбинации даты и времени со смещением допустимы.
- Parameters:
-
offset- смещение для объединения, не null - Returns:
- дата и время со смещением, образованная из этой даты и времени и указанного смещения, не null
atZone
public ZonedDateTime atZone(ZoneId zone)
ZonedDateTime. Это возвращает ZonedDateTime, образованную из этой даты и времени по указанному часовому поясу. Результат будет соответствовать этой дате и времени по возможности. Правила часового пояса, такие как летнее время, означают, что не каждая локальная дата и время допустима для указанного пояса, поэтому локальная дата и время могут быть скорректированы.
Локальная дата и время разрешаются до единого момента на временной шкале. Это достигается путем поиска допустимого смещения от UTC/Гринвича для локальной даты и времени, как определено в rules идентификатора часового пояса.
В большинстве случаев существует только одно допустимое смещение для локальной даты и времени. В случае наложения, когда часы переводятся назад, существует два допустимых смещения. Этот метод использует более раннее смещение, обычно соответствующее «лету».
Чтобы получить более позднее смещение при наложении, вызовите ZonedDateTime.withLaterOffsetAtOverlap() на результате этого метода. Чтобы выбросить исключение при разрыве или наложении, используйте ZonedDateTime.ofStrict(LocalDateTime, ZoneOffset, ZoneId).
- Specified by:
-
atZoneв интерфейсеChronoLocalDateTime<LocalDate> - Parameters:
-
zone- используемый часовой пояс, не null - Returns:
- дата и время в часовом поясе, образованная из этой даты и времени, не null
compareTo
public int compareTo(ChronoLocalDateTime<?> other)
Сравнение в первую очередь основано на дате и времени, от самого раннего до самого позднего. Оно «совпадает с equals», как определено в Comparable.
Если все сравниваемые даты и время являются экземплярами LocalDateTime, то сравнение будет полностью основано на дате и времени. Если некоторые сравниваемые даты находятся в разных хронологиях, то учитывается и хронология, см. ChronoLocalDateTime.compareTo(java.time.chrono.ChronoLocalDateTime<?>).
- Specified by:
-
compareToв интерфейсеChronoLocalDateTime<LocalDate> - Specified by:
-
compareToв интерфейсеComparable<ChronoLocalDateTime<?>> - Parameters:
-
other- другая дата и время для сравнения, не null - Returns:
- значение сравнения, представляющее сравнение этой локальной даты и времени с
otherлокальной датой и временем и этой хронологии сotherхронологией, в порядке, возвращая первое ненулевое значение, а в противном случае возвращая ноль - See Also:
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, 2023, 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/21/docs/api/java.base/java/time/LocalDateTime.html