2 месяца назад
💡 Java совет: считаем разницу во времени без ручной математики
Начиная с Java 8 можно использовать ChronoUnit.between(start, end), чтобы посчитать интервал между датами или временем в нужных единицах — дни, часы, минуты и т.д. Вместо того чтобы самому высчитывать миллисекунды и делить их на 1000×60×60, просто используйте API из java.time. Пример: import java.time.*; import java.time.temporal.ChronoUnit; public class Demo { public static void main(String[] args) { LocalDate d1 = LocalDate...
122 читали · 4 года назад
Основы API Time для Java
Источник: Nuances of Programming Во многих языках программирования работа с датой и временем  —  непростая задача. Но, начиная с Java 8, JDK предоставляет новый API Time, полностью меняющий подход к концепциям, которые относятся к времени. Примечания. Хотя JSR 310 был представлен в Java 8, для большей удобочитаемости в приведенных примерах кода задействована такая функция Java 10, как вывод типа локальной переменной. Однако сами примеры кода совместимы с Java 8. В части примеров, содержащих // =>, будет показан вывод toString() предыдущей строки/переменной...
2 месяца назад
☕ Java совет: сравнение времени без ловушек точности
Иногда при сравнении времени в Java проверки равенства могут неожиданно падать, потому что значения отличаются на миллисекунды или наносекунды. Например: Instant a = Instant.parse("2025-10-01T10:42:11Z"); Instant b = Instant.parse("2025-10-01T10:42:44Z"); Если сравнивать напрямую, они разные. Но если вам важна точность до минуты, это можно легко исправить. Используйте Instant.truncatedTo(): boolean sameMinute = a.truncatedTo(ChronoUnit.MINUTES) .equals(b.truncatedTo(ChronoUnit...
5 лет назад
Java переводим Date и Calendar в строку
При работе с датами в Java часто возникает потребность перевести дату в определенный формат или человеко читаемый вид. При работе с классом Date в этом нам поможет другой класс SimpleDateFormat. Пример...