1. Класс LocalTime
Класс LocalTime создан для случаев, когда нужно работать только со временем без даты. Например, вы пишете приложение-будильник. Время для вас важно, а дата — нет.
Класс LocalTime очень похож на класс LocalDate: его объекты тоже нельзя изменять после создания.
Получение текущего времени
Чтобы создать новый объект класса LocalTime, нужно воспользоваться статическим методом now(). Пример:
LocalTime time = LocalTime.now();
Где time — это переменная класса LocalTime, а LocalTime.now() — вызов статического метода now() у класса LocalTime.
Пример:
| Код | Вывод на экран |
|---|---|
|
|
После точки указывается текущее значение наносекунд.
2. Получение заданного времени
Чтобы получить заданное время, нужно воспользоваться статическим методом of(). Пример:
LocalTime time = LocalTime.of(часы, минуты, секунды, наносекунды);
В который можно передать соответственно часы, минуты, секунды и наносекунды.
Пример:
| Код | Вывод на экран |
|---|---|
|
|
Есть, кстати, еще две модификации этого метода:
LocalTime time = LocalTime.of(часы, минуты, секунды);
И
LocalTime time = LocalTime.of(часы, минуты);
Так что можете пользоваться каким вам удобнее.
Получение времени по номеру секунды
Также можно получить время по номеру секунды в сутках: для этого есть специальный статический метод ofSecondOfDay():
LocalTime time = LocalTime.ofSecondOfDay(секунды);
Где секунды — это количество секунд, прошедшее с начала суток.
Пример:
| Код | Вывод на экран |
|---|---|
|
|
Да,10 тысяч секунд — это чуть меньше трех часов. Все верно.
3. Получение фрагментов времени
Чтобы из объекта LocalTime получить значение определенного элемента времени, используют специальные методы:
| Метод | Описание |
|---|---|
|
Возвращает часы |
|
Возвращает минуты |
|
Возвращает секунды |
|
Возвращает наносекунды |
Пример:
| Код | Вывод на экран |
|---|---|
|
|
4. Изменение времени в объекте класса LocalTime
Класс LocalTime также содержит методы, которые позволяют работать со временем. Эти методы реализованы по аналогии с методами класса LocalDate: каждый из них не меняет существующий объект LocalTime, а возвращает новый с нужными данными.
Вот какие методы есть у класса LocalTime:
| Метод | Описание |
|---|---|
|
Добавляет часы |
|
Добавляет минуты |
|
Добавляет секунды |
|
Добавляет наносекунды |
|
Вычитает часы |
|
Вычитает минуты |
|
Вычитает секунды |
|
Вычитает наносекунды |
Пример:
| Код | Вывод на экран |
|---|---|
|
|
Обратите внимание, что каждый раз мы получаем новое время относительно первого объекта time. Если добавить ко времени 3600 секунд, это будет ровно 1 час.
ПЕРЕЙДИТЕ В ПОЛНУЮ ВЕРСИЮ