TGViewer
Java Mentor Java Mentor @your_java_mentor · 289 subscribers
Post #364 236
Как посчитать продолжительность времени?

⚠️ОСТОРОЖНО СПОЙЛЕРЫ! ⚠️
Не читай код, если ты делаешь задание и весь такой САМОСТОЯТЕЛЬНЫЙ

Накидаю вариантов того, как посчитать продолжительность времени между двумя временными метками.

Вариант 1. Старый добрый Date. 📅

Просто берем и делаем так:


Date d1 = new Date();
waitSeconds(1);
Date d2 = new Date();
long duration = d2.getTime() - d1.getTime();


И получаем продолжительность в миллисекундах между d1 и d2.

Вариант 2. Еще топорнее 🪓

Если не хочется сталкиваться с подкопотными календарными преобразованиями метода getTime у класса Date, можно сделать практически тоже самое, но без класса Date:


long time1 = System.currentTimeMillis();
waitSeconds(1);
long time2 = System.currentTimeMillis();
long duration = time2 - time1;


Вариант 3. Для тех кто устал от Java 7. 🎱

Еще один интуитивный вариант - LocalDateTime. Делаем все тоже самое, заменяя ряд ключевых слов:


LocalDateTime ldt1 = LocalDateTime.now();
waitSeconds(1);
LocalDateTime ldt2 = LocalDateTime.now();
Duration duration = Duration.between(ldt1, ldt2);


И получаем класс Duration c богатым как швейцарский нож API 🪚.

Вариант 4. Для тех кого смущает локаль и часовые пояса 🌐

Абсолютно такой же вариант, как и 3, но локально-независимый: Instant вместо LDT:


Instant instant1 = Instant.now();
waitSeconds(1);
Instant instant2 = Instant.now();
Duration duration = Duration.between(instant1, instant2);


Остается всего 1 вопрос, комрад.

Как сложить несколько Duration (➕) ?

Все просто, кэп, юзай метод plus:


Duration d1 = Duration.ofSeconds(1);
Duration d2 = Duration.ofSeconds(1);
Duration d3 = Duration.ofSeconds(1);
Duration total = d1.plus(d2).plus(d3);


Раздел призыва к действию

Сможешь придумать другой правильный/упоротый вариант? Накидай дичи в комментах 😏
  • 🔥 5
  • 👍 2
More from @your_java_mentor
  1. Sep 2, 2026photo post
  2. Sep 2, 2026video post
  3. Sep 1, 2026Post #394
  4. Sep 1, 2026Post #393
  5. Aug 28, 2026Как по вашему, что не так с этим кодом? ❌ В методе main в список добавляются магические ко…
  6. Aug 19, 2026UserService + UserServiceImpl — но Impl тут единственный. Как вы считаете: стоит ли заводи…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →