Java 8부터 도입된 새로운 날짜와 시간 API를 사용하면 날짜와 시간을 다루는 작업을 쉽고 효율적으로 처리할 수 있습니다. 이 API는 java.time
패키지에 정의되어 있으며, LocalDate
, LocalTime
, LocalDateTime
, Period
, Duration
등 다양한 클래스와 메소드를 제공합니다.
이번에는 Java 8 날짜와 시간 API의 Period
클래스를 사용하여 두 개의 날짜 사이의 기간을 계산하는 방법에 대해 알아보겠습니다.
Period
클래스
Period
클래스는 두 LocalDate
객체 사이의 기간을 표현하는 데 사용됩니다. Period
객체는 년, 월, 일로 구성되며, 두 날짜의 차이를 표현할 수 있습니다.
import java.time.LocalDate;
import java.time.Period;
public class PeriodExample {
public static void main(String[] args) {
LocalDate startDate = LocalDate.of(2022, 1, 1);
LocalDate endDate = LocalDate.of(2022, 12, 31);
Period period = Period.between(startDate, endDate);
System.out.println("기간: " + period.getYears() + "년 " + period.getMonths() + "개월 " + period.getDays() + "일");
}
}
위 예제에서는 LocalDate
클래스를 사용하여 시작 날짜와 종료 날짜를 생성한 후, Period.between()
메소드를 사용하여 두 날짜 사이의 기간을 계산합니다. Period
객체의 getYears()
, getMonths()
, getDays()
메소드를 사용하여 년, 월, 일 단위로 기간을 얻을 수 있습니다.
결과는 다음과 같이 출력될 것입니다:
기간: 0년 11개월 30일
위 예제에서는 시작 날짜와 종료 날짜가 한 해 차이나므로, 11개월 30일의 기간을 출력합니다.
결론
Java 8의 날짜와 시간 API를 사용하면 기간을 더 쉽게 계산하고 처리할 수 있습니다. Period
클래스를 사용하여 두 날짜 사이의 기간을 계산하는 방법을 알아보았습니다. 이를 응용하여 다양한 날짜와 시간 연산을 수행할 수 있습니다.
더 자세한 내용은 Java 8 날짜와 시간 API 공식 문서를 참조하세요.