>Java >java지도 시간 >java.util.Date를 java.time.LocalDate로 변환하는 방법은 무엇입니까?

java.util.Date를 java.time.LocalDate로 변환하는 방법은 무엇입니까?

DDD
DDD원래의
2024-12-10 07:30:12432검색

How to Convert java.util.Date to java.time.LocalDate?

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 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.