"Asia/Seoul" 같은 타임존 안에는 일광 절약 시간제에 대한 정보와 UTC+09:00와 같은 UTC로부터 시간 차이인 오프셋 정보를 모두 포함하도 있다.
java는 타임존 정보를 ZoneId 클래스로 제공한다.
ZonedDateTime은 LocalDateTime과 타임존 정보를 포함하는 ZoneId가 합쳐진 클래스이다.
public class ZonedDateTime {
private final LocalDateTime dateTime;
private final ZoneOffset offset;
private final ZoneId zone;
}
표현 예시
package time;
import java.time.LocalDateTime;
import java.time.ZoneId;
import java.time.ZonedDateTime;
public class ZonedDateTimeMain {
public static void main(String[] args) {
ZonedDateTime nowZdt = ZonedDateTime.now();
System.out.println("nowZdt = " + nowZdt);
LocalDateTime ldt = LocalDateTime.of(2030, 1, 1, 13, 30, 50);
ZonedDateTime zdt1 = ZonedDateTime.of(ldt, ZoneId.of("Asia/Seoul"));
System.out.println("zdt1 = " + zdt1);
ZonedDateTime zdt2 = ZonedDateTime.of(2030, 1, 1, 13, 30, 50, 0,ZoneId.of("Asia/Seoul"));
System.out.println("zdt2 = " + zdt2);
ZonedDateTime utcZdt = zdt2.withZoneSameInstant(ZoneId.of("UTC"));
System.out.println("utcZdt = " + utcZdt);
}
}
nowZdt = 2024-02-09T12:02:13.457712+09:00[Asia/Seoul]
zdt1 = 2030-01-01T13:30:50+09:00[Asia/Seoul]
zdt2 = 2030-01-01T13:30:50+09:00[Asia/Seoul]
utcZdt = 2030-01-01T04:30:50Z[UTC]
Instant (1) | 2025.05.23 |
---|---|
OffsetDateTime (0) | 2025.05.23 |
Context Switching이란? (0) | 2025.05.16 |
Process와 Thread (2) | 2025.05.16 |
LocalDate, LocalTime, LocalDateTime (0) | 2025.05.13 |
댓글 영역