Класс 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
LocalTime, '00:00'. Это время полуночи в начале дня.MAX
public static final LocalTime MAX
LocalTime, '23:59:59.999999999'. Это время перед полуночью в конце дня.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)
Проверяет, может ли это время быть запрошено для указанного поля. Если ложь, то вызов методов 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 экземпляры вернут ложь. Если поле не 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:
- объект
LocalTimeна основеthisс произведенной корректировкой, не null - Throws:
-
DateTimeException- если корректировка не может быть произведена -
ArithmeticException- если происходит переполнение числовых типов
с
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- Возвращает копию со значением часовая метка (AM/PM). AM/PM, минута часа, секунда минуты и наносекунды останутся неизменными. -
HOUR_OF_DAY- Возвращает копию со значением часа дня. Минута, секунда и наносекунды останутся неизменными. -
CLOCK_HOUR_OF_DAY- Возвращает копию со значением часовой метки дня. Минута, секунда и наносекунды останутся неизменными. -
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- если происходит переполнение чисел
сЧасом
public LocalTime withHour(int hour)
LocalTime с изменённым часом.
Этот экземпляр неизменяем и не затрагивается этим вызовом метода.
- Parameters:
-
hour- час дня, устанавливаемый в результате, от 0 до 23 - Returns:
- новая копия, основанная на этом времени, с запрошенным часом, не null
- Throws:
-
DateTimeException- если значение часа недопустимо
сМинутой
public LocalTime withMinute(int minute)
LocalTime с изменённой минутой.
Этот экземпляр неизменяем и не затрагивается этим вызовом метода.
- Parameters:
-
minute- минута, устанавливаемая в результате, от 0 до 59 - Returns:
- новая копия, основанная на этом времени, с запрошенной минутой, не null
- Throws:
-
DateTimeException- если значение минуты недопустимо
сСекундой
public LocalTime withSecond(int second)
LocalTime с изменённой секундой.
Этот экземпляр неизменяем и не затрагивается этим вызовом метода.
- Parameters:
-
second- секунда, устанавливаемая в результате, от 0 до 59 - Returns:
- новая копия, основанная на этом времени, с запрошенной секундой, не null
- Throws:
-
DateTimeException- если значение секунды недопустимо
сНаносекундами
public LocalTime withNano(int nanoOfSecond)
LocalTime с изменённой наносекундой.
Этот экземпляр неизменяем и не затрагивается этим вызовом метода.
- Parameters:
-
nanoOfSecond- наносекунда, устанавливаемая в результате, от 0 до 999 999 999 - Returns:
- новая копия, основанная на этом времени, с запрошенной наносекундой, не null
- Throws:
-
DateTimeException- если значение наносекунд недопустимо
усечённоеДо
public LocalTime truncatedTo(TemporalUnit unit)
LocalTime с усечённым временем.
Усечение возвращает копию исходного времени, для полей, меньших, чем указанная единица измерения, устанавливаются в ноль. Например, усечение с помощью единицы измерения minutes установит секунды минуты и наносекунды в ноль.
Единица измерения должна иметь продолжительность, которая делится на длину стандартного дня без остатка. Это включает все предоставленные единицы измерения времени в ChronoUnit и DAYS. Другие единицы измерения вызовут исключение.
Этот экземпляр неизменяем и не затрагивается этим вызовом метода.
- Parameters:
-
unit- единица измерения для усечения, не null - Returns:
- новая копия, основанная на этом времени, с усечённым временем, не null
- Throws:
-
DateTimeException- если усечение невозможно -
UnsupportedTemporalTypeException- если единица измерения не поддерживается
плюс
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- если происходит переполнение числовых значений (определяется запросом)
adjustInto
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- если произошла ошибка при печати
atDate
public LocalDateTime atDate(LocalDate date)
LocalDateTime. Это возвращает LocalDateTime , образованный из этого времени в указанную дату. Все возможные сочетания даты и времени допустимы.
- Параметры:
-
date- дата для объединения, не null - Возвращает:
- локальная дата-время, образованная из этого времени и указанной даты, не null
atOffset
public OffsetTime atOffset(ZoneOffset offset)
OffsetTime. Это возвращает OffsetTime , образованный из этого времени в указанное смещение. Все возможные сочетания времени и смещения допустимы.
- Параметры:
-
offset- смещение для объединения, не null - Возвращает:
- время со смещением, образованное из этого времени и указанного смещения, не null
toSecondOfDay
public int toSecondOfDay()
0 до 24 * 60 * 60 - 1. - Возвращает:
- секунды дня, эквивалентные этому времени
toNanoOfDay
public long toNanoOfDay()
0 до 24 * 60 * 60 * 1,000,000,000 - 1. - Возвращает:
- наносекунды дня, эквивалентные этому времени
toEpochSecond
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, может быть отрицательным
- Since:
- 9
compareTo
public int compareTo(LocalTime other)
Сравнение основано на положении на временной оси локальных моментов времени в течение дня. Оно "согласуется с equals", как определено в Comparable.
- Указано:
-
compareToв интерфейсеComparable<LocalTime> - Параметры:
-
other- другое время для сравнения, не null - Возвращает:
- значение компаратора, которое меньше нуля, если это раньше
other, ноль, если они равны, или больше нуля, если это послеother - См. также:
isAfter
public boolean isAfter(LocalTime other)
Сравнение основано на положении времени на временной оси в течение дня.
- Параметры:
-
other- другое время для сравнения, не null - Возвращает:
- true, если это время после указанного времени
isBefore
public boolean isBefore(LocalTime other)
Сравнение основано на положении времени на временной оси в течение дня.
- Параметры:
-
other- другое время для сравнения, не null - Возвращает:
- true, если этот момент времени до указанного времени
equals
public boolean equals(Object obj)
Сравнение основано на положении времени на временной оси в течение дня.
Сравниваются только объекты типа LocalTime, другие типы возвращают false. Чтобы сравнить дату двух экземпляров TemporalAccessor , используйте ChronoField.NANO_OF_DAY в качестве компаратора.
- Overrides:
-
equalsв классеObject - Параметры:
-
obj- объект для проверки, null возвращает false - Возвращает:
- true, если это время равно другому времени
- См. также:
hashCode
public int hashCode()
- Overrides:
-
hashCodein classObject - Returns:
- подходящий хэш-код
- See Also:
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 - 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/LocalTime.html