[java] 자바 11에서 추가된 기간(Duration) 클래스의 ofXXX() 메서드 사용하기

자바 8 이전에는 java.util.Datejava.util.Calendar 등을 사용하여 시간 간격 계산을 처리했지만, 자바 8에서는 java.time 패키지가 도입되었고, 자바 11에서는 이 패키지에 기간을 나타내는 Duration 클래스가 추가되었습니다. Duration 클래스는 시간 간격을 표현하고 다루는데 유용한 메서드와 기능을 제공합니다.

ofXXX() 메서드

Duration 클래스에는 다양한 시간을 나타내는 ofXXX() 메서드가 제공됩니다. 이 메서드를 사용하여 기간을 설정할 수 있습니다.

ofDays()

Duration duration = Duration.ofDays(5);

위의 예제 코드는 5일을 나타내는 Duration 객체를 생성합니다.

ofHours()

Duration duration = Duration.ofHours(12);

위의 예제 코드는 12시간을 나타내는 Duration 객체를 생성합니다.

ofMinutes()

Duration duration = Duration.ofMinutes(30);

위의 예제 코드는 30분을 나타내는 Duration 객체를 생성합니다.

ofSeconds()

Duration duration = Duration.ofSeconds(180);

위의 예제 코드는 180초를 나타내는 Duration 객체를 생성합니다.

ofMillis()

Duration duration = Duration.ofMillis(500);

위의 예제 코드는 500밀리초(0.5초)를 나타내는 Duration 객체를 생성합니다.

ofNanos()

Duration duration = Duration.ofNanos(2000000);

위의 예제 코드는 200만 나노초(2밀리초)를 나타내는 Duration 객체를 생성합니다.

결론

자바 11의 Duration 클래스는 시간 간격을 나타내고 처리하는 데 사용되는 편리한 메서드를 제공합니다. ofXXX() 메서드를 사용하여 간편하게 기간을 설정할 수 있습니다. 이를 통해 시간 간격을 다루는 코드를 더욱 간결하게 작성할 수 있습니다.


참고 문서: Oracle Docs - Duration