ZonedDateTime과 OffsetDateTime은 둘 다 Java 8 DateTime API에서 매우 인기 있는 클래스입니다. 둘 다 타임라인에 나노초 단위의 정확한 순간을 저장할 수 있습니다. 그럼 그들 사이에 차이점이 있나요? 다음 기사에서는 ZonedDateTime과 OffsetDateTime의 차이점을 설명합니다. 모든 사람에게 도움이 되기를 바랍니다. [동영상 튜토리얼 추천: Java 튜토리얼]
ZonedDateTime이 무엇인가요?
ZonedDateTime은 ISO-8601 달력 시스템의 시간대를 포함한 날짜-시간의 불변 표현입니다(예: 2007-12-03T10:15:30+01:00 유럽/파리). 이는 localdatetime, zoneid 및 확인된 zoneoffset의 세 가지 개별 객체에 해당하는 것을 보유합니다.
여기서 ZoneID는 오프셋 변경 방법과 시기를 결정합니다. 따라서 어떤 오프셋이 유효한지 구역이 제어하므로 오프셋을 자유롭게 설정할 수 없습니다.
특정 구역에 대한 현재 ZonedDateTime을 얻으려면 다음을 사용합니다:
ZoneId zone = ZoneId.of("Europe/Berlin"); ZonedDateTime zonedDateTime = ZonedDateTime.now(zone);
ZonedDateTime 클래스는 주어진 날짜를 한 시간대로 변환하는 내장 메서드도 제공합니다:
ZonedDateTime destZonedDateTime = sourceZonedDateTime.withZoneSameInstant(destZoneId);
마지막으로 DST를 완전히 인식합니다. 일광 절약 시간제를 처리하며 수시로 조정합니다. 특정 시간대의 날짜/시간 필드를 표시하려는 경우 종종 유용합니다.
OffsetDateTime이 무엇인가요?
OffsetDateTime은 ISO-8601 달력 시스템(예: 2007-12-03T10:15:30+01:00)에서 UTC/그리니치 시간과 오프셋된 날짜-시간의 불변 표현입니다. 즉, 모든 날짜 및 시간 필드를 나노초 단위까지 정확하게 저장하고 GMT/UTC로부터의 오프셋을 저장합니다.
GMT/UTC에서 현재 OffsetDateTime을 가져옵니다. 2시간 오프셋:
ZoneOffset zoneOffSet= ZoneOffset.of("+02:00"); OffsetDateTime offsetDateTime = OffsetDateTime.now(zoneOffSet);
ZonedDateTime과 OffsetDateTime의 차이점
ZonedDateTime:
● 모든 날짜 및 시간 필드를 나노초 단위로 저장합니다. 시간대, 모호한 현지 날짜 시간 처리를 위한 구역 오프셋
● 구역이 유효한 오프셋 값을 제어하므로 오프셋을 자유롭게 설정할 수 없습니다.
● DST를 완벽하게 지원하고 일광 절약 시간제 조정을 처리합니다.
● 사용자별로 시간대가 매우 편리합니다. 날짜/시간 필드 표시용
OffsetDateTime:
● 모든 날짜 및 시간 필드를 나노초 정밀도로 저장하고 GMT/UTC의 오프셋(시간대 정보 없음)
●● 데이터베이스에 날짜를 저장하거나 통신하는 데 사용해야 함 네트워크를 통해
위 내용은 이 글의 전체 내용이며, 모든 분들의 학습에 도움이 되기를 바랍니다. 더 흥미로운 내용을 보려면 PHP 중국어 웹사이트의 관련 튜토리얼 열을 주의 깊게 살펴보세요! ! !
위 내용은 ZonedDateTime과 OffsetDateTime의 차이점은 무엇입니까의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!