РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
909 of 1163 menu

Класс Duration

Класс Duration из пакета java.time представляет собой промежуток времени, измеряемый в секундах и наносекундах. Он часто используется для хранения разницы между двумя моментами времени или для задания временного интервала. Объект Duration неизменяем: все методы, изменяющие значение, возвращают новый экземпляр. Класс реализует интерфейс Comparable, поэтому два промежутка можно сравнивать между собой.

Создать объект Duration можно с помощью статических фабричных методов, например ofSeconds, ofMinutes или between. В первый параметр таких методов мы передаем число единиц времени, а метод between принимает два объекта Temporal и вычисляет промежуток между ними.

Синтаксис

Duration.ofSeconds(seconds) Duration.ofMillis(millis) Duration.ofMinutes(minutes) Duration.ofHours(hours) Duration.ofDays(days) Duration.between(start, end)

Пример

Давайте создадим промежуток в 90 секунд и выведем его значение:

import java.time.Duration; public class Main { public static void main(String[] args) { Duration duration = Duration.ofSeconds(90); System.out.println(duration); } }

Результат выполнения кода:

"PT1M30S"

Пример

Давайте получим количество секунд и миллисекунд из промежутка в 2 минуты:

import java.time.Duration; public class Main { public static void main(String[] args) { Duration duration = Duration.ofMinutes(2); System.out.println(duration.toSeconds()); System.out.println(duration.toMillis()); } }

Результат выполнения кода:

120 120000

Пример

Давайте найдем промежуток между двумя моментами времени и проверим, является ли он отрицательным:

import java.time.Duration; import java.time.LocalTime; public class Main { public static void main(String[] args) { LocalTime start = LocalTime.of(10, 0, 0); LocalTime end = LocalTime.of(9, 30, 0); Duration duration = Duration.between(start, end); System.out.println(duration); System.out.println(duration.isNegative()); } }

Результат выполнения кода:

"PT-30M" true

Пример

Давайте сложим два промежутка и получим результат в минутах:

import java.time.Duration; public class Main { public static void main(String[] args) { Duration first = Duration.ofMinutes(3); Duration second = Duration.ofMinutes(2); Duration res = first.plus(second); System.out.println(res); System.out.println(res.toMinutes()); } }

Результат выполнения кода:

"PT5M" 5

Смотрите также

  • метод ofSeconds,
    который создает промежуток из секунд
  • метод between,
    который вычисляет промежуток между моментами времени
  • метод toMinutes,
    который возвращает количество минут
  • метод plus,
    который прибавляет промежуток к текущему
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить