Метод between класса Period
Метод between класса Period вычисляет
период между двумя датами и возвращает его в виде
объекта Period. В первый параметр мы передаем
начальную дату типа LocalDate, во второй -
конечную дату типа LocalDate. Если конечная
дата раньше начальной, метод возвращает период
с отрицательными значениями лет, месяцев и дней.
Полученный период содержит количество полных лет,
месяцев и дней между датами.
Синтаксис
Period.between(startDate, endDate)
Пример
Давайте вычислим период между двумя датами:
import java.time.LocalDate;
import java.time.Period;
public class Main
{
public static void main(String[] args)
{
LocalDate start = LocalDate.of(2020, 1, 1);
LocalDate end = LocalDate.of(2023, 3, 15);
Period period = Period.between(start, end);
System.out.println(period.getYears());
System.out.println(period.getMonths());
System.out.println(period.getDays());
}
}
Результат выполнения кода:
3
2
14
Пример
Давайте выведем полученный период целиком:
import java.time.LocalDate;
import java.time.Period;
public class Main
{
public static void main(String[] args)
{
LocalDate start = LocalDate.of(2020, 1, 1);
LocalDate end = LocalDate.of(2023, 3, 15);
Period period = Period.between(start, end);
System.out.println(period);
}
}
Результат выполнения кода:
"P3Y2M14D"
Пример
Давайте вычислим период, когда конечная дата раньше начальной:
import java.time.LocalDate;
import java.time.Period;
public class Main
{
public static void main(String[] args)
{
LocalDate start = LocalDate.of(2023, 3, 15);
LocalDate end = LocalDate.of(2020, 1, 1);
Period period = Period.between(start, end);
System.out.println(period);
}
}
Результат выполнения кода:
"P-3Y-2M-14D"