[java] 자바 8부터 추가된 TemporalAdjusters 클래스의 활용 방법
자바 8부터 도입된 TemporalAdjusters
클래스는 날짜 및 시간 조정에 유용한 기능을 제공합니다. 이 클래스는 java.time.temporal.TemporalAdjuster
인터페이스를 구현한 메소드를 제공하여, 날짜와 시간을 조정할 때 사용할 수 있습니다.
TemporalAdjusters
클래스 예제
다음은 TemporalAdjusters
클래스의 주요 메소드를 사용한 예제입니다.
import java.time.LocalDate;
import java.time.temporal.TemporalAdjusters;
public class TemporalAdjustersExample {
public static void main(String[] args) {
// 현재 날짜
LocalDate now = LocalDate.now();
System.out.println("현재 날짜: " + now);
// 현재 달의 첫 번째 일요일
LocalDate firstSundayOfMonth = now.with(TemporalAdjusters.firstInMonth(DayOfWeek.SUNDAY));
System.out.println("현재 달의 첫 번째 일요일: " + firstSundayOfMonth);
// 다음 월요일
LocalDate nextMonday = now.with(TemporalAdjusters.next(DayOfWeek.MONDAY));
System.out.println("다음 월요일: " + nextMonday);
// 이번 달 마지막 날짜
LocalDate lastDayOfMonth = now.with(TemporalAdjusters.lastDayOfMonth());
System.out.println("이번 달 마지막 날짜: " + lastDayOfMonth);
}
}
위의 예제에서는 TemporalAdjusters.firstInMonth()
, TemporalAdjusters.next()
, TemporalAdjusters.lastDayOfMonth()
메소드를 사용하여 날짜 조정을 수행하였습니다. 각각 첫 번째 일요일, 다음 월요일, 이번 달 마지막 날짜를 구하는 예제입니다.
출력 결과는 다음과 같습니다:
현재 날짜: 2022-01-01
현재 달의 첫 번째 일요일: 2022-01-02
다음 월요일: 2022-01-03
이번 달 마지막 날짜: 2022-01-31
TemporalAdjusters
클래스의 다양한 메소드
TemporalAdjusters
클래스는 위의 예제에서 사용한 메소드 외에도 다양한 메소드를 제공합니다. 이를 통해 다음과 같은 작업을 수행할 수 있습니다:
firstDayOfMonth()
: 현재 월의 첫 번째 날짜를 반환합니다.firstDayOfYear()
: 현재 연도의 첫 번째 날짜를 반환합니다.firstDayOfNextMonth()
: 다음 월의 첫 번째 날짜를 반환합니다.firstDayOfNextYear()
: 다음 연도의 첫 번째 날짜를 반환합니다.lastDayOfYear()
: 현재 연도의 마지막 날짜를 반환합니다.
이 외에도 dayOfWeekInMonth()
, previous()
, previousOrSame()
등 다양한 메소드가 있으며, 필요에 따라 사용할 수 있습니다.
더 자세한 내용은 Java 공식 문서를 참조하십시오.
이렇게 TemporalAdjusters
클래스를 활용하면 날짜와 시간을 조정하는 작업을 더욱 쉽고 간편하게 처리할 수 있습니다.