Класс LocalTime
- Все реализованные интерфейсы:
-
Serializable,Comparable<LocalTime>,Temporal,TemporalAccessor,TemporalAdjuster
public final class LocalTime extends Object implements Temporal, TemporalAdjuster, Comparable<LocalTime>, Serializable
10:15:30. LocalTime — это неизменяемый объект даты и времени, представляющий время, часто отображаемое как час-минуты-секунды. Время представлено с точностью до наносекунд. Например, значение "13:45.30.123456789" может быть сохранено в LocalTime.
Этот класс не хранит и не представляет дату или часовой пояс. Вместо этого он описывает местное время, как показано на часах. Он не может представлять мгновение на временной шкале без дополнительной информации, такой как смещение или часовой пояс.
Система календаря ISO-8601 — это современная гражданская система календаря, используемая сегодня в большинстве стран мира. Этот API предполагает, что все системы календарей используют для времени суток одно и то же представление — этот класс.
Это значимый класс; программисты должны рассматривать экземпляры, которые равны, как взаимозаменяемые и не должны использовать экземпляры для синхронизации, иначе могут возникнуть непредсказуемые последствия. Например, в будущих версиях синхронизация может завершиться неудачно. Для сравнения следует использовать метод equals.
- Требования к реализации:
- Этот класс неизменяемый и потокобезопасный.
- С:
- 1.8
- См. также:
Краткое описание полей
| Модификатор и тип | Поле | Описание |
|---|---|---|
static final LocalTime |
MAX |
Максимально поддерживаемое значение LocalTime, '23:59:59.999999999'. |
static final LocalTime |
MIDNIGHT |
Время полуночи в начале дня, '00:00'. |
static final LocalTime |
MIN |
Минимально поддерживаемое значение LocalTime, '00:00'. |
static final LocalTime |
NOON |
Время полдня, '12:00'. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
Temporal |
adjustInto |
Настраивает указанный временной объект на то же время, что и этот объект. |
LocalDateTime |
atDate |
Объединяет это время с датой для создания LocalDateTime. |
OffsetTime |
atOffset |
Объединяет это время со смещением для создания OffsetTime. |
int |
compareTo |
Сравнивает это время с другим временем. |
boolean |
equals |
Проверяет, равно ли это время другому времени. |
String |
format |
Форматирует это время с использованием указанного форматера. |
static LocalTime |
from |
Получает экземпляр LocalTime из временного объекта. |
int |
get |
Возвращает значение указанного поля из этого времени как int. |
int |
getHour() |
Возвращает поле часа. |
long |
getLong |
Возвращает значение указанного поля из этого времени как long. |
int |
getMinute() |
Возвращает поле минуты. |
int |
getNano() |
Возвращает поле наносекунд. |
int |
getSecond() |
Возвращает поле секунд. |
int |
hashCode() |
Хеш-код для этого времени. |
boolean |
isAfter |
Проверяет, предшествует ли это время указанному времени. |
boolean |
isBefore |
Проверяет, следует ли это время за указанным временем. |
boolean |
isSupported |
Проверяет, поддерживается ли указанное поле. |
boolean |
isSupported |
Проверяет, поддерживается ли указанная единица. |
LocalTime |
minus |
Возвращает копию этого времени с указанным значением, вычтенным. |
LocalTime |
minus |
Возвращает копию этого времени с указанным значением, вычтенным. |
LocalTime |
minusHours |
Возвращает копию этого LocalTime с указанным числом часов, вычтенных. |
LocalTime |
minusMinutes |
Возвращает копию этого LocalTime с указанным числом минут, вычтенных. |
LocalTime |
minusNanos |
Возвращает копию этого LocalTime с указанным числом наносекунд, вычтенных. |
LocalTime |
minusSeconds |
Возвращает копию этого LocalTime с указанным числом секунд, вычтенных. |
static LocalTime |
now() |
Получает текущее время с системных часов в часовом поясе по умолчанию. |
static LocalTime |
now |
Получает текущее время с указанных часов. |
static LocalTime |
now |
Получает текущее время с системных часов в указанном часовом поясе. |
static LocalTime |
of |
Получает экземпляр LocalTime по часу и минуте. |
static LocalTime |
of |
Получает экземпляр LocalTime по часу, минуте и секунде. |
static LocalTime |
of |
Получает экземпляр LocalTime по часу, минуте, секунде и наносекунде. |
static LocalTime |
ofInstant |
Получает экземпляр LocalTime из Instant и идентификатора часового пояса. |
static LocalTime |
ofNanoOfDay |
Получает экземпляр LocalTime из значения наносекунд в дне. |
static LocalTime |
ofSecondOfDay |
Получает экземпляр LocalTime из значения секунд в дне. |
static LocalTime |
parse |
Получает экземпляр LocalTime из текстовой строки, например 10:15. |
static LocalTime |
parse |
Получает экземпляр LocalTime из текстовой строки с использованием определённого форматера. |
LocalTime |
plus |
Возвращает копию этого времени с указанным значением, добавленным. |
LocalTime |
plus |
Возвращает копию этого времени с указанным значением, добавленным. |
LocalTime |
plusHours |
Возвращает копию этого LocalTime с указанным числом часов, добавленных. |
LocalTime |
plusMinutes |
Возвращает копию этого LocalTime с указанным числом минут, добавленных. |
LocalTime |
plusNanos |
Возвращает копию этого LocalTime с указанным числом наносекунд, добавленных. |
LocalTime |
plusSeconds |
Возвращает копию этого LocalTime с указанным числом секунд, добавленных. |
<R> R |
query |
Запрашивает это время с использованием указанного запроса. |
ValueRange |
range |
Получает диапазон допустимых значений для указанного поля. |
long |
toEpochSecond |
Преобразует это LocalTime в количество секунд с эпохи 1970-01-01T00:00:00Z. |
long |
toNanoOfDay() |
Извлекает время как наносекунды в дне, от 0 до 24 * 60 * 60 * 1,000,000,000 - 1. |
int |
toSecondOfDay() |
Извлекает время как секунды в дне, от 0 до 24 * 60 * 60 - 1. |
String |
toString() |
Выводит это время в виде String, например 10:15. |
LocalTime |
truncatedTo |
Возвращает копию этого LocalTime с обнулённым временем. |
long |
until |
Вычисляет временной интервал до другого времени в терминах указанной единицы. |
LocalTime |
with |
Возвращает скорректированную копию этого времени. |
LocalTime |
with |
Возвращает копию этого времени с указанным полем, установленным на новое значение. |
LocalTime |
withHour |
Возвращает копию этого LocalTime с изменённым значением часа. |
LocalTime |
withMinute |
Возвращает копию этого LocalTime с изменённым значением минуты. |
LocalTime |
withNano |
Возвращает копию этого LocalTime с изменённым значением наносекунд. |
LocalTime |
withSecond |
Возвращает копию этого LocalTime с изменённым значением секунды. |
Подробное описание полей
MIN
public static final LocalTime MIN
MAX
public static final LocalTime MAX
MIDNIGHT
public static final LocalTime MIDNIGHT
NOON
public static final LocalTime NOON
Подробное описание методов
now
public static LocalTime now()
Это запрашивает system clock в часовом поясе по умолчанию для получения текущего времени.
Использование этого метода предотвратит возможность использования альтернативных часов для тестирования, так как часы жестко закодированы.
- Возвращает:
- текущее время с использованием системных часов и часового пояса по умолчанию, не null
now
public static LocalTime now(ZoneId zone)
Это запрашивает system clock для получения текущего времени. Указание часового пояса позволяет избежать зависимости от часового пояса по умолчанию.
Использование этого метода предотвратит возможность использования альтернативных часов для тестирования, так как часы жестко закодированы.
- Параметры:
-
zone- идентификатор часового пояса для использования, не null - Возвращает:
- текущее время с использованием системных часов, не null
now
public static LocalTime now(Clock clock)
Это запрашивает указанные часы для получения текущего времени. Использование этого метода позволяет использовать альтернативные часы для тестирования. Альтернативные часы могут быть введены с помощью dependency injection.
- Параметры:
-
clock- используемые часы, не null - Возвращает:
- текущее время, не null
of
public static LocalTime of(int hour, int minute)
LocalTime из часа и минуты. Это возвращает LocalTime с указанным часом и минутой. Поля секунда и наносекунда будут установлены в ноль.
- Параметры:
-
hour- час дня для представления, от 0 до 23 -
minute- минута часа для представления, от 0 до 59 - Возвращает:
- локальное время, не null
- Исключения:
-
DateTimeException- если значение любого поля выходит за пределы диапазона
of
public static LocalTime of(int hour, int minute, int second)
LocalTime из часа, минуты и секунды. Это возвращает LocalTime с указанным часом, минутой и секундой. Поле наносекунда будет установлено в ноль.
- Параметры:
-
hour- час дня для представления, от 0 до 23 -
minute- минута часа для представления, от 0 до 59 -
second- секунда минуты для представления, от 0 до 59 - Возвращает:
- локальное время, не null
- Исключения:
-
DateTimeException- если значение любого поля выходит за пределы диапазона
of
public static LocalTime of(int hour, int minute, int second, int nanoOfSecond)
LocalTime из часа, минуты, секунды и наносекунды. Это возвращает LocalTime с указанным часом, минутой, секундой и наносекундой.
- Параметры:
-
hour- час дня для представления, от 0 до 23 -
minute- минута часа для представления, от 0 до 59 -
second- секунда минуты для представления, от 0 до 59 -
nanoOfSecond- наносекунда секунды для представления, от 0 до 999 999 999 - Возвращает:
- локальное время, не null
- Исключения:
-
DateTimeException- если значение любого поля выходит за пределы диапазона
ofInstant
public static LocalTime ofInstant(Instant instant, ZoneId zone)
LocalTime из Instant и идентификатора часового пояса. Это создает локальное время на основе указанного момента времени. Сначала вычисляется смещение от UTC/Гринвича с использованием идентификатора часового пояса и момента времени, так как для каждого момента времени существует только одно допустимое смещение. Затем момент времени и смещение используются для расчета локального времени.
- Параметры:
-
instant- момент времени для создания времени, не null -
zone- часовой пояс, который может быть смещением, не null - Возвращает:
- локальное время, не null
- С:
- 9
ofSecondOfDay
public static LocalTime ofSecondOfDay(long secondOfDay)
LocalTime из значения секунды дня. Это возвращает LocalTime с указанной секундой дня. Поле наносекунда будет установлено в ноль.
- Параметры:
-
secondOfDay- секунда дня, от0до24 * 60 * 60 - 1 - Возвращает:
- локальное время, не null
- Исключения:
-
DateTimeException- если значение секунды дня недопустимо
ofNanoOfDay
public static LocalTime ofNanoOfDay(long nanoOfDay)
LocalTime из значения наносекунды дня. Это возвращает LocalTime с указанной наносекундой дня.
- Параметры:
-
nanoOfDay- наносекунда дня, от0до24 * 60 * 60 * 1,000,000,000 - 1 - Возвращает:
- локальное время, не null
- Исключения:
-
DateTimeException- если значение наносекунды дня недопустимо
from
public static LocalTime from(TemporalAccessor temporal)
LocalTime из временного объекта. Это получает локальное время на основе указанного временного объекта. TemporalAccessor представляет собой произвольный набор информации о дате и времени, который эта фабрика преобразует в экземпляр LocalTime.
Преобразование использует запрос TemporalQueries.localTime(), который зависит от извлечения поля NANO_OF_DAY.
Этот метод соответствует сигнатуре функционального интерфейса TemporalQuery, позволяя использовать его в качестве запроса с помощью ссылки на метод, LocalTime::from.
- Параметры:
-
temporal- временной объект для преобразования, не null - Возвращает:
- локальное время, не null
- Исключения:
-
DateTimeException- если невозможно преобразовать вLocalTime
parse
public static LocalTime parse(CharSequence text)
LocalTime из текстовой строки, такой как 10:15. Строка должна представлять собой допустимое время и анализируется с помощью DateTimeFormatter.ISO_LOCAL_TIME.
- Параметры:
-
text- текст для анализа, например, "10:15:30", не null - Возвращает:
- проанализированное локальное время, не null
- Исключения:
-
DateTimeParseException- если текст нельзя проанализировать
parse
public static LocalTime parse(CharSequence text, DateTimeFormatter formatter)
LocalTime из текстовой строки с использованием определенного форматера. Текст анализируется с помощью форматера, возвращая время.
- Параметры:
-
text- текст для анализа, не null -
formatter- используемый форматер, не null - Возвращает:
- проанализированное локальное время, не null
- Исключения:
-
DateTimeParseException- если текст нельзя проанализировать
isSupported
public boolean isSupported(TemporalField field)
Проверяет, можно ли запросить у этого времени указанное поле. Если false, то вызов методов range, get и with(TemporalField, long) вызовет исключение.
Если поле является ChronoField, то запрос реализован здесь. Поддерживаемые поля:
-
NANO_OF_SECOND -
NANO_OF_DAY -
MICRO_OF_SECOND -
MICRO_OF_DAY -
MILLI_OF_SECOND -
MILLI_OF_DAY -
SECOND_OF_MINUTE -
SECOND_OF_DAY -
MINUTE_OF_HOUR -
MINUTE_OF_DAY -
HOUR_OF_AMPM -
CLOCK_HOUR_OF_AMPM -
HOUR_OF_DAY -
CLOCK_HOUR_OF_DAY -
AMPM_OF_DAY
ChronoField объекты вернут false. Если поле не является ChronoField, то результат этого метода получается путем вызова TemporalField.isSupportedBy(TemporalAccessor) с this в качестве аргумента. Поддерживается ли поле, определяется полем.
- Определено в:
-
isSupportedв интерфейсеTemporalAccessor - Параметры:
-
field- проверяемое поле, null возвращает false - Возвращает:
- true, если поле поддерживается в этом времени, false — если нет
isSupported
public boolean isSupported(TemporalUnit unit)
Проверяет, может ли указанный интервал быть добавлен к этому времени или вычтен из него. Если false, вызов методов plus(long, TemporalUnit) и minus приведет к исключению.
Если интервал является ChronoUnit, то запрос обрабатывается здесь. Поддерживаемые интервалы:
-
NANOS -
MICROS -
MILLIS -
SECONDS -
MINUTES -
HOURS -
HALF_DAYS
ChronoUnit экземпляры вернут false. Если интервал не является ChronoUnit, результат этого метода получается путем вызова TemporalUnit.isSupportedBy(Temporal) с this в качестве аргумента. Поддерживается ли интервал определяется интервалом.
- 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, которые слишком велики для 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- если произошел переполнение числовых значений
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
with
public LocalTime with(TemporalAdjuster adjuster)
Возвращает LocalTime, основанное на этом, с изменённым временем. Изменение происходит с помощью указанной стратегии изменения. Прочитайте документацию адаптера, чтобы понять, какое изменение будет выполнено.
Простой адаптер может просто установить одно из полей, например, поле час. Более сложный адаптер может установить время на последнее время дня.
Результат этого метода получается путем вызова метода TemporalAdjuster.adjustInto(Temporal) на указанном адаптере, передавая this в качестве аргумента.
Этот экземпляр неизменяемый и не изменяется этим вызовом.
- Specified by:
-
withв интерфейсеTemporal - Parameters:
-
adjuster- адаптер для использования, не null - Returns:
- время, основанное на
thisс произведённым изменением, не null - Throws:
-
DateTimeException- если изменение сделать невозможно -
ArithmeticException- если произошёл переполнение числовых значений
with
public LocalTime with(TemporalField field, long newValue)
Это возвращает новую копию, основанную на текущей, со значением для указанного поля, изменённым. Это можно использовать для изменения любого поддерживаемого поля, такого как час, минута или секунда. Если установить значение невозможно, потому что поле не поддерживается или по какой-либо другой причине, выбрасывается исключение.
Если поле является ChronoField, то корректировка выполняется здесь. Поддерживаемые поля ведут себя следующим образом:
-
NANO_OF_SECOND- Возвращает новую копию с указанным значением наносекунд. Час, минута и секунда останутся неизменными. -
NANO_OF_DAY- Возвращает новую копию с указанным значением наносекунд от начала дня. Это полностью заменяет время и эквивалентноofNanoOfDay(long). -
MICRO_OF_SECOND- Возвращает новую копию с наносекундами, заменёнными на указанные микросекунды, умноженные на 1000. Час, минута и секунда останутся неизменными. -
MICRO_OF_DAY- Возвращает новую копию с указанным значением микросекунд от начала дня. Это полностью заменяет время и эквивалентно использованиюofNanoOfDay(long)с микросекундами, умноженными на 1000. -
MILLI_OF_SECOND- Возвращает новую копию с наносекундами, заменёнными на указанные миллисекунды, умноженные на 1 000 000. Час, минута и секунда останутся неизменными. -
MILLI_OF_DAY- Возвращает новую копию с указанным значением миллисекунд от начала дня. Это полностью заменяет время и эквивалентно использованиюofNanoOfDay(long)с миллисекундами, умноженными на 1 000 000. -
SECOND_OF_MINUTE- Возвращает новую копию с указанной секундой минуты. Час, минута и наносекунды останутся неизменными. -
SECOND_OF_DAY- Возвращает новую копию с указанной секундой дня. Наносекунды останутся неизменными. -
MINUTE_OF_HOUR- Возвращает новую копию с указанной минутой часа. Час, секунда минуты и наносекунды останутся неизменными. -
MINUTE_OF_DAY- Возвращает новую копию с указанной минутой дня. Секунда минуты и наносекунды останутся неизменными. -
HOUR_OF_AMPM- Возвращает новую копию с указанным часом (AM/PM). AM/PM, минута часа, секунда минуты и наносекунды останутся неизменными. -
CLOCK_HOUR_OF_AMPM- Возвращает новую копию с указанным часом (24-часовой формат). AM/PM, минута часа, секунда минуты и наносекунды останутся неизменными. -
HOUR_OF_DAY- Возвращает новую копию с указанным часом. Минута часа, секунда минуты и наносекунды останутся неизменными. -
CLOCK_HOUR_OF_DAY- Возвращает новую копию с указанным часом (24-часовой формат). Минута часа, секунда минуты и наносекунды останутся неизменными. -
AMPM_OF_DAY- Возвращает новую копию с указанным значением AM/PM. Час (AM/PM), минута часа, секунда минуты и наносекунды останутся неизменными.
Во всех случаях, если новое значение находится за пределами допустимого диапазона значений для поля, будет выброшено исключение.
Все остальные экземпляры ChronoField выбросят исключение UnsupportedTemporalTypeException.
Если поле не является ChronoField, то результат этого метода получается путём вызова TemporalField.adjustInto(Temporal, long) с this в качестве аргумента. В этом случае поле определяет, как и нужно ли корректировать момент времени.
Этот экземпляр неизменяем и не затрагивается этим вызовом метода.
- Specified by:
-
withв интерфейсеTemporal - Parameters:
-
field- поле для установки в результате, не null -
newValue- новое значение поля в результате - Returns:
- новая копия, основанная на
this, с указанным полем, установленным, не null - Throws:
-
DateTimeException- если поле нельзя установить -
UnsupportedTemporalTypeException- если поле не поддерживается -
ArithmeticException- если происходит переполнение чисел
withHour
public LocalTime withHour(int hour)
LocalTime с изменённым часом. Этот экземпляр неизменяем и не затрагивается этим вызовом метода.
- Parameters:
-
hour- час, который нужно установить в результате, от 0 до 23 - Returns:
- новая копия, основанная на текущем времени с запрошенным часом, не null
- Throws:
-
DateTimeException- если значение часа недопустимо
withMinute
public LocalTime withMinute(int minute)
LocalTime с изменённой минутой. Этот экземпляр неизменяем и не затрагивается этим вызовом метода.
- Parameters:
-
minute- минута, которую нужно установить в результате, от 0 до 59 - Returns:
- новая копия, основанная на текущем времени с запрошенной минутой, не null
- Throws:
-
DateTimeException- если значение минуты недопустимо
withSecond
public LocalTime withSecond(int second)
LocalTime с изменённой секундой. Этот экземпляр неизменяем и не затрагивается этим вызовом метода.
- Parameters:
-
second- секунда, которую нужно установить в результате, от 0 до 59 - Returns:
- новая копия, основанная на текущем времени с запрошенной секундой, не null
- Throws:
-
DateTimeException- если значение секунды недопустимо
withNano
public LocalTime withNano(int nanoOfSecond)
LocalTime с изменённой наносекундой. Этот экземпляр неизменяем и не затрагивается этим вызовом метода.
- Parameters:
-
nanoOfSecond- наносекунда, которую нужно установить в результате, от 0 до 999 999 999 - Returns:
- новая копия, основанная на текущем времени с запрошенной наносекундой, не null
- Throws:
-
DateTimeException- если значение наносекунд недопустимо
truncatedTo
public LocalTime truncatedTo(TemporalUnit unit)
LocalTime с усечённым временем. Усечение возвращает копию исходного времени с полями, меньшими, чем указанный единица измерения, установленные в ноль. Например, усечение с помощью minutes установит секунды минуты и наносекунды в ноль.
Единица измерения должна иметь длительность, которая делится на длину стандартного дня без остатка. Это включает все предоставленные единицы измерения времени в ChronoUnit и DAYS. Другие единицы измерения вызовут исключение.
Этот экземпляр неизменяем и не затрагивается этим вызовом метода.
- Parameters:
-
unit- единица измерения для усечения, не null - Returns:
- новая копия, основанная на этом времени с усечённым временем, не null
- Throws:
-
DateTimeException- если усечение невозможно -
UnsupportedTemporalTypeException- если единица измерения не поддерживается
plus
public LocalTime plus(TemporalAmount amountToAdd)
Это возвращает новую копию, основанную на текущей, с добавленным указанным значением. Значение обычно является Duration, но может быть любым другим типом, реализующим интерфейс TemporalAmount.
Вычисление делегируется объекту значения путём вызова TemporalAmount.addTo(Temporal). Реализация значения свободна в реализации добавления любым желаемым способом, однако обычно она вызывает plus(long, TemporalUnit). Обратитесь к документации реализации значения, чтобы определить, можно ли его успешно добавить.
Этот экземпляр неизменяем и не затрагивается этим вызовом метода.
- Specified by:
-
plusв интерфейсеTemporal - Parameters:
-
amountToAdd- значение для добавления, не null - Returns:
- новая копия, основанная на текущем времени с выполненным добавлением, не null
- Throws:
-
DateTimeException- если добавление невозможно -
ArithmeticException- если происходит переполнение чисел
plus
public LocalTime plus(long amountToAdd, TemporalUnit unit)
Это возвращает копию, основанную на этом времени, со значением в указанных единицах, добавленным. Если невозможно добавить значение, потому что единица не поддерживается или по какой-либо другой причине, выбрасывается исключение.
Если поле является ChronoUnit, то добавление реализовано здесь. Поддерживаемые поля ведут себя следующим образом:
-
NANOS- Возвращает копию с добавленным указанным количеством наносекунд. Это эквивалентноplusNanos(long). -
MICROS- Возвращает копию с добавленным указанным количеством микросекунд. Это эквивалентноplusNanos(long)со значением, умноженным на 1000. -
MILLIS- Возвращает копию с добавленным указанным количеством миллисекунд. Это эквивалентноplusNanos(long)со значением, умноженным на 1 000 000. -
SECONDS- Возвращает копию с добавленным указанным количеством секунд. Это эквивалентноplusSeconds(long). -
MINUTES- Возвращает копию с добавленным указанным количеством минут. Это эквивалентноplusMinutes(long). -
HOURS- Возвращает копию с добавленным указанным количеством часов. Это эквивалентноplusHours(long). -
HALF_DAYS- Возвращает копию с добавленным указанным количеством полусуток. Это эквивалентноplusHours(long)со значением, умноженным на 12.
Все остальные экземпляры ChronoUnit будут выбрасывать UnsupportedTemporalTypeException.
Если поле не является ChronoUnit, то результат этого метода получается путем вызова TemporalUnit.addTo(Temporal, long) со значением this в качестве аргумента. В этом случае единица определяет, как выполнить добавление.
Этот экземпляр неизменяемый и не изменяется в результате этого вызова.
- Specified by:
-
plusв интерфейсеTemporal - Parameters:
-
amountToAdd- количество единиц для добавления к результату, может быть отрицательным -
unit- единицы количества для добавления, не null - Returns:
- копия времени, основанная на этом времени с добавленным указанным значением, не null
- Throws:
-
DateTimeException- если добавление невозможно -
UnsupportedTemporalTypeException- если единица не поддерживается -
ArithmeticException- если происходит переполнение
plusHours
public LocalTime plusHours(long hoursToAdd)
LocalTime с добавленным указанным количеством часов. Это добавляет указанное количество часов к этому времени, возвращая новое время. Вычисление перематывается до полуночи.
Этот экземпляр неизменяемый и не изменяется в результате этого вызова.
- Parameters:
-
hoursToAdd- количество часов для добавления, может быть отрицательным - Returns:
- копия времени, основанная на этом времени с добавленными часами, не null
plusMinutes
public LocalTime plusMinutes(long minutesToAdd)
LocalTime с добавленным указанным количеством минут. Это добавляет указанное количество минут к этому времени, возвращая новое время. Вычисление перематывается до полуночи.
Этот экземпляр неизменяемый и не изменяется в результате этого вызова.
- Parameters:
-
minutesToAdd- количество минут для добавления, может быть отрицательным - Returns:
- копия времени, основанная на этом времени с добавленными минутами, не null
plusSeconds
public LocalTime plusSeconds(long secondstoAdd)
LocalTime с добавленным указанным количеством секунд. Это добавляет указанное количество секунд к этому времени, возвращая новое время. Вычисление перематывается до полуночи.
Этот экземпляр неизменяемый и не изменяется в результате этого вызова.
- Parameters:
-
secondstoAdd- количество секунд для добавления, может быть отрицательным - Returns:
- копия времени, основанная на этом времени с добавленными секундами, не null
plusNanos
public LocalTime plusNanos(long nanosToAdd)
LocalTime с добавленным указанным количеством наносекунд. Это добавляет указанное количество наносекунд к этому времени, возвращая новое время. Вычисление перематывается до полуночи.
Этот экземпляр неизменяемый и не изменяется в результате этого вызова.
- Parameters:
-
nanosToAdd- количество наносекунд для добавления, может быть отрицательным - Returns:
- копия времени, основанная на этом времени с добавленными наносекундами, не null
minus
public LocalTime minus(TemporalAmount amountToSubtract)
Это возвращает копию, основанную на этом времени, с вычитанием указанного значения. Значение обычно является Duration, но может быть любого другого типа, реализующего интерфейс TemporalAmount.
Вычисление делегируется объекту значения вызовом TemporalAmount.subtractFrom(Temporal). Реализация значения свободна реализовывать вычитание любым желаемым способом, но обычно обращается к minus(long, TemporalUnit). Обратитесь к документации реализации значения, чтобы определить, можно ли успешно вычесть его.
Этот экземпляр неизменяемый и не изменяется в результате этого вызова.
- Specified by:
-
minusв интерфейсеTemporal - Parameters:
-
amountToSubtract- значение для вычитания, не null - Returns:
- копия времени, основанная на этом времени с вычитанием, не null
- Throws:
-
DateTimeException- если вычитание невозможно -
ArithmeticException- если происходит переполнение
minus
public LocalTime minus(long amountToSubtract, TemporalUnit unit)
Это возвращает копию, основанную на этом времени, со значением в указанных единицах, вычтенным. Если невозможно вычесть значение, потому что единица не поддерживается или по какой-либо другой причине, выбрасывается исключение.
Этот метод эквивалентен plus(long, TemporalUnit) со значением, измененным на противоположное. См. этот метод для полного описания того, как работает добавление, и, следовательно, вычитание.
Этот экземпляр неизменяемый и не изменяется в результате этого вызова.
- Specified by:
-
minusв интерфейсеTemporal - Parameters:
-
amountToSubtract- количество единиц для вычитания из результата, может быть отрицательным -
unit- единицы количества для вычитания, не null - Returns:
- копия времени, основанная на этом времени с вычтенным указанным значением, не null
- Throws:
-
DateTimeException- если вычитание невозможно -
UnsupportedTemporalTypeException- если единица не поддерживается -
ArithmeticException- если происходит переполнение
minusHours
public LocalTime minusHours(long hoursToSubtract)
LocalTime с вычтенным указанным количеством часов. Это вычитает указанное количество часов из этого времени, возвращая новое время. Вычисление перематывается до полуночи.
Этот экземпляр неизменяемый и не изменяется в результате этого вызова.
- Parameters:
-
hoursToSubtract- количество часов для вычитания, может быть отрицательным - Returns:
- копия времени, основанная на этом времени с вычтенными часами, не null
minusMinutes
public LocalTime minusMinutes(long minutesToSubtract)
LocalTime с вычтенным указанным количеством минут. Это вычитает указанное количество минут из этого времени, возвращая новое время. Вычисление перематывается до полуночи.
Этот экземпляр неизменяемый и не изменяется в результате этого вызова.
- Parameters:
-
minutesToSubtract- количество минут для вычитания, может быть отрицательным - Returns:
- копия времени, основанная на этом времени с вычтенными минутами, не null
minusSeconds
public LocalTime minusSeconds(long secondsToSubtract)
LocalTime с вычтенным указанным количеством секунд. Это вычитает указанное количество секунд из этого времени, возвращая новое время. Вычисление перематывается до полуночи.
Этот экземпляр неизменяемый и не изменяется в результате этого вызова.
- Parameters:
-
secondsToSubtract- количество секунд для вычитания, может быть отрицательным - Returns:
- копия времени, основанная на этом времени с вычтенными секундами, не null
minusNanos
public LocalTime minusNanos(long nanosToSubtract)
LocalTime с вычтенным указанным количеством наносекунд. Это вычитает указанное количество наносекунд из этого времени, возвращая новое время. Вычисление перематывается до полуночи.
Этот экземпляр неизменяемый и не изменяется в результате этого вызова.
- Parameters:
-
nanosToSubtract- количество наносекунд для вычитания, может быть отрицательным - Returns:
- копия времени, основанная на этом времени с вычтенными наносекундами, не null
запрос
public <R> R query(TemporalQuery<R> query)
Это запрашивает это время, используя указанный объект стратегии запроса. Объект TemporalQuery определяет логику, используемую для получения результата. Прочитайте документацию запроса, чтобы понять, каким будет результат этого метода.
Результат этого метода получается путем вызова метода TemporalQuery.queryFrom(TemporalAccessor) на указанном запросе, передавая this в качестве аргумента.
- Определено в:
-
queryв интерфейсеTemporalAccessor - Параметры типа:
-
R- тип результата - Параметры:
-
query- вызываемый запрос, не null - Возвращает:
- результат запроса, может быть null (определяется запросом)
- Бросает:
-
DateTimeException- если запрос выполнить невозможно (определяется запросом) -
ArithmeticException- если происходит переполнение числовых значений (определяется запросом)
скорректироватьВ
public Temporal adjustInto(Temporal temporal)
Это возвращает временной объект того же наблюдаемого типа, что и входной, с временем, изменённым на такое же, как у этого.
Коррекция эквивалентна использованию Temporal.with(TemporalField, long), передавая ChronoField.NANO_OF_DAY в качестве поля.
В большинстве случаев более понятно изменить порядок вызова, используя Temporal.with(TemporalAdjuster):
// these two lines are equivalent, but the second approach is recommended temporal = thisLocalTime.adjustInto(temporal); temporal = temporal.with(thisLocalTime);
Этот экземпляр неизменяемый и не затрагивается этим вызовом метода.
- Определено в:
-
adjustIntoв интерфейсеTemporalAdjuster - Параметры:
-
temporal- целевой объект для корректировки, не null - Возвращает:
- откорректированный объект, не null
- Бросает:
-
DateTimeException- если корректировку выполнить невозможно -
ArithmeticException- если происходит переполнение числовых значений
до
public long until(Temporal endExclusive, TemporalUnit unit)
Это вычисляет количество времени между двумя объектами LocalTime в терминах одной TemporalUnit. Начальная и конечная точки — это this и указанное время. Результат будет отрицательным, если конец раньше начала. Temporal передаваемое в этот метод, преобразуется в LocalTime с помощью from(TemporalAccessor). Например, количество часов между двумя временами можно рассчитать, используя startTime.until(endTime, HOURS).
Вычисление возвращает целое число, представляющее количество полных единиц между двумя временами. Например, количество часов между 11:30 и 13:29 будет всего один час, так как это на одну минуту меньше двух часов.
Существует два эквивалентных способа использования этого метода. Первый — вызвать этот метод. Второй — использовать TemporalUnit.between(Temporal, Temporal):
// these two lines are equivalent amount = start.until(end, MINUTES); amount = MINUTES.between(start, end);Выбор должен быть сделан на основе того, что делает код более читаемым.
Вычисление реализовано в этом методе для ChronoUnit. Поддерживаются единицы NANOS, MICROS, MILLIS, SECONDS, MINUTES, HOURS и HALF_DAYS. Другие значения ChronoUnit вызовут исключение.
Если единица измерения не является ChronoUnit, то результат этого метода получается путем вызова TemporalUnit.between(Temporal, Temporal) с this в качестве первого аргумента и преобразованного временного входного значения в качестве второго аргумента.
Этот экземпляр неизменяемый и не затрагивается этим вызовом метода.
- Определено в:
-
untilв интерфейсеTemporal - Параметры:
-
endExclusive- конечное время, исключая, преобразуемое вLocalTime, не null -
unit- единица измерения для измерения количества, не null - Возвращает:
- количество времени между этим временем и конечным временем
- Бросает:
-
DateTimeException- если количество не может быть вычислено или конечное временное значение не может быть преобразовано вLocalTime -
UnsupportedTemporalTypeException- если единица измерения не поддерживается -
ArithmeticException- если происходит переполнение числовых значений
форматировать
public String format(DateTimeFormatter formatter)
Это время будет передано форматеру для создания строки.
- Параметры:
-
formatter- используемый форматер, не null - Возвращает:
- строка отформатированного времени, не null
- Бросает:
-
DateTimeException- если произошла ошибка во время печати
вДата
public LocalDateTime atDate(LocalDate date)
LocalDateTime. Это возвращает LocalDateTime, сформированный из этого времени в указанную дату. Все возможные комбинации даты и времени допустимы.
- Параметры:
-
date- дата для объединения, не null - Возвращает:
- локальная дата-время, сформированная из этого времени и указанной даты, не null
сСмещением
public OffsetTime atOffset(ZoneOffset offset)
OffsetTime. Это возвращает OffsetTime, сформированный из этого времени с указанным смещением. Все возможные комбинации времени и смещения допустимы.
- Параметры:
-
offset- смещение для объединения, не null - Возвращает:
- время со смещением, сформированное из этого времени и указанного смещения, не null
кСекундаДня
public int toSecondOfDay()
0 до 24 * 60 * 60 - 1.- Возвращает:
- значение секунды дня, соответствующее этому времени
кНаноДня
public long toNanoOfDay()
0 до 24 * 60 * 60 * 1,000,000,000 - 1.- Возвращает:
- значение наносекунды дня, соответствующее этому времени
кЭпохеСекунды
public long toEpochSecond(LocalDate date, ZoneOffset offset)
LocalTime в количество секунд с эпохи 1970-01-01T00:00:00Z. Это объединяет это локальное время с указанной датой и смещением для вычисления значения эпохи-секунды, которое представляет собой количество прошедших секунд с 1970-01-01T00:00:00Z. Мгновения на временной шкале после эпохи положительные, раньше — отрицательные.
- Параметры:
-
date- локальная дата, не null -
offset- смещение часового пояса, не null - Возвращает:
- количество секунд с эпохи 1970-01-01T00:00:00Z, может быть отрицательным
- С:
- 9
сравнитьС
public int compareTo(LocalTime other)
Сравнение основано на позиции локальных времен на временной шкале в течение дня. Оно "согласуется с equals", как определено в Comparable.
- Определено в:
-
compareToв интерфейсеComparable<LocalTime> - Параметры:
-
other- другое время для сравнения, не null - Возвращает:
- значение компаратора, отрицательное, если меньше, положительное, если больше
после
public boolean isAfter(LocalTime other)
Сравнение основано на позиции времени на временной шкале в течение дня.
- Параметры:
-
other- другое время для сравнения, не null - Возвращает:
- true, если это время после указанного
до
public boolean isBefore(LocalTime other)
Сравнение основано на позиции времени на временной шкале в течение дня.
- Параметры:
-
other- другое время для сравнения, не null - Возвращает:
- true, если этот момент раньше указанного времени
равно
public boolean equals(Object obj)
Сравнение основано на позиции времени на временной шкале в течение дня.
Сравниваются только объекты типа LocalTime, другие типы возвращают false. Для сравнения даты двух экземпляров TemporalAccessor используйте ChronoField.NANO_OF_DAY в качестве компаратора.
- Переопределяет:
-
equalsв классеObject - Параметры:
-
obj- проверяемый объект, null возвращает false - Возвращает:
- true, если это время равно другому времени
- См. также:
hashCode
public int hashCode()
- Overrides:
-
hashCodein classObject - Возвращает:
- подходящий код хэша
- См. также:
toString
public String toString()
String, например, 10:15. Вывод будет иметь один из следующих форматов ISO-8601:
HH:mmHH:mm:ssHH:mm:ss.SSSHH:mm:ss.SSSSSSHH:mm:ss.SSSSSSSSS
- Overrides:
-
toStringin classObject - Возвращает:
- строковое представление этого времени, не null
© 1993, 2021, 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/17/docs/api/java.base/java/time/LocalTime.html