Как правильно вычесть разность дат на java?

Пользователь

от jedidiah.brown , в категории: Java , 7 месяцев назад

Как правильно вычесть разность дат на java?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

1 ответ

Пользователь

от linnea , 5 месяцев назад

@jedidiah.brown 

Для вычисления разности дат на Java необходимо использовать классы java.time.LocalDate, java.time.LocalTime и java.time.LocalDateTime.

  1. Сначала создайте объекты LocalDate, представляющие даты, которые вы хотите вычесть:
1
2
LocalDate date1 = LocalDate.of(2022, 5, 1);
LocalDate date2 = LocalDate.of(2022, 4, 1);


  1. Вычислите разность между датами, используя метод ChronoUnit.DAYS.between:
1
long daysBetween = ChronoUnit.DAYS.between(date2, date1);


  1. Теперь daysBetween содержит количество дней между date2 и date1.


Пример полного кода:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
import java.time.LocalDate;
import java.time.temporal.ChronoUnit;

public class DateDifference {
    public static void main(String[] args) {
        LocalDate date1 = LocalDate.of(2022, 5, 1);
        LocalDate date2 = LocalDate.of(2022, 4, 1);

        long daysBetween = ChronoUnit.DAYS.between(date2, date1);
        System.out.println("Days between: " + daysBetween);
    }
}


Этот код выводит "Days between: 30", что означает, что между датами 2022-04-01 и 2022-05-01 прошло 30 дней.