java.util.Date를 java.time.LocalDate로 변환
JDK 8/JSR-310에 도입된 java.time 패키지는 다음을 제공합니다. 레거시 java.util.Date 클래스보다 더 현대적이고 포괄적인 날짜 및 시간 API입니다. 다음 단계를 사용하면 java.util.Date 객체를 새로운 java.time.LocalDate로 효과적으로 변환할 수 있습니다.
1. 인스턴트로 변환:
java.util.Date 클래스는 에포크 이후의 순간을 밀리초 단위로 나타냅니다. java.util.Date 객체를 인스턴트로 변환하려면 toInstant() 메서드를 사용하세요.
Date input = new Date(); Instant instant = input.toInstant();
2. 시간대 적용:
인스턴트는 시간대 정보를 포함하지 않습니다. 현지 날짜로 변환하려면 시간대를 적용해야 합니다. 원하는 시간대에 atZone() 메소드를 사용하세요.
ZonedDateTime zdt = instant.atZone(ZoneId.systemDefault());
3. LocalDate 추출:
ZonedDateTime에는 날짜와 시간은 물론 시간대도 포함됩니다. LocalDate를 추출하려면 toLocalDate() 메소드를 사용하십시오.
LocalDate date = zdt.toLocalDate();
Java 9 단순화:
Java 9에서는 이 변환을 단순화하는 새로운 메소드를 도입했습니다.
LocalDate date = LocalDate.ofInstant(input.toInstant(), ZoneId.systemDefault());
이 방법은 기본 시간대를 사용하여 순간을 LocalDate로 직접 변환합니다. 이전 접근 방식보다 더 간결하고 효율적입니다.
위 내용은 java.util.Date를 java.time.LocalDate로 변환하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!