[java] 자바 11에서 추가된 LocalDate의 withDayOfYear() 메서드 사용하기

Java 11에서는 LocalDate 클래스에 withDayOfYear() 메서드가 추가되었습니다. 이 메서드는 해당 LocalDate 객체의 일년 중 몇 번째 날짜를 변경하는 데 사용됩니다. 이번 글에서는 withDayOfYear() 메서드를 사용하여 LocalDate 객체의 날짜를 변경하는 방법에 대해 알아보겠습니다.

사용 방법

withDayOfYear() 메서드는 다음과 같은 형식을 가집니다.

public LocalDate withDayOfYear(int dayOfYear)

withDayOfYear() 메서드는 새로운 LocalDate 객체를 반환하며, 기존의 LocalDate 객체는 변경되지 않습니다. 따라서 이 메서드를 사용하여 원하는 날짜로 변경한 후에는 반환된 객체를 새로운 변수에 할당해야 합니다.

예제

다음은 withDayOfYear() 메서드를 사용하여 LocalDate 객체의 날짜를 변경하는 예제입니다.

import java.time.LocalDate;

public class Main {
    public static void main(String[] args) {
        LocalDate date = LocalDate.of(2021, 1, 1);
        System.out.println("이전 날짜: " + date);

        LocalDate newDate = date.withDayOfYear(365);
        System.out.println("변경된 날짜: " + newDate);
    }
}

위 예제에서는 LocalDate 객체를 생성하고 withDayOfYear() 메서드를 사용하여 날짜를 변경합니다. 기존의 날짜는 변경되지 않고, 반환된 새로운 LocalDate 객체인 newDate에 변경된 날짜가 저장됩니다.

실행 결과는 다음과 같습니다.

이전 날짜: 2021-01-01
변경된 날짜: 2021-12-31

위 예제에서는 2021년 1월 1일을 생성한 후, withDayOfYear() 메서드를 사용하여 365번째 날짜인 12월 31일로 변경하였습니다.

결론

Java 11에서 추가된 LocalDatewithDayOfYear() 메서드를 사용하면, LocalDate 객체의 날짜를 변경할 수 있습니다. 해당 메서드를 사용하여 특정 날짜로 변경한 후에는 반환된 객체를 새로운 변수에 할당하여 사용해야 합니다. 이를 통해 자바 프로그래밍에서 날짜 조작을 더욱 편리하게 할 수 있습니다.


참고 문서: Java 11 API 문서