import java.time.LocalDate;
import java.time.LocalDateTime;
import java.time.LocalTime;
import java.time.Month;
import java.time.ZoneId;
import java.time.ZonedDateTime;
public class Main {
public static void main
(String[] args
) { LocalTime time = LocalTime.of(10, 20);
ZoneId zoneId = ZoneId.of("Europe/London");
System.
out.
println(ZonedDateTime.
of(LocalDate.
of(2021, Month.
MARCH,
27), time, zoneId
)); System.
out.
println(ZonedDateTime.
of(LocalDate.
of(2021, Month.
MARCH,
28), time, zoneId
));
// ############# Obtaining timezone offset from ZoneId #############
LocalDateTime ldt = LocalDateTime.of(LocalDate.of(2021, Month.MARCH, 28), time);
System.
out.
println(ZonedDateTime.
of(ldt, zoneId
).
getOffset()); // Alternatively
System.
out.
println(zoneId.
getRules().
getOffset(ldt
)); }
}
aW1wb3J0IGphdmEudGltZS5Mb2NhbERhdGU7CmltcG9ydCBqYXZhLnRpbWUuTG9jYWxEYXRlVGltZTsKaW1wb3J0IGphdmEudGltZS5Mb2NhbFRpbWU7CmltcG9ydCBqYXZhLnRpbWUuTW9udGg7CmltcG9ydCBqYXZhLnRpbWUuWm9uZUlkOwppbXBvcnQgamF2YS50aW1lLlpvbmVkRGF0ZVRpbWU7CgpwdWJsaWMgY2xhc3MgTWFpbiB7CglwdWJsaWMgc3RhdGljIHZvaWQgbWFpbihTdHJpbmdbXSBhcmdzKSB7CgkJTG9jYWxUaW1lIHRpbWUgPSBMb2NhbFRpbWUub2YoMTAsIDIwKTsKCQlab25lSWQgem9uZUlkID0gWm9uZUlkLm9mKCJFdXJvcGUvTG9uZG9uIik7CgoJCVN5c3RlbS5vdXQucHJpbnRsbihab25lZERhdGVUaW1lLm9mKExvY2FsRGF0ZS5vZigyMDIxLCBNb250aC5NQVJDSCwgMjcpLCB0aW1lLCB6b25lSWQpKTsKCQlTeXN0ZW0ub3V0LnByaW50bG4oWm9uZWREYXRlVGltZS5vZihMb2NhbERhdGUub2YoMjAyMSwgTW9udGguTUFSQ0gsIDI4KSwgdGltZSwgem9uZUlkKSk7CgoJCS8vICMjIyMjIyMjIyMjIyMgT2J0YWluaW5nIHRpbWV6b25lIG9mZnNldCBmcm9tIFpvbmVJZCAjIyMjIyMjIyMjIyMjCgkJTG9jYWxEYXRlVGltZSBsZHQgPSBMb2NhbERhdGVUaW1lLm9mKExvY2FsRGF0ZS5vZigyMDIxLCBNb250aC5NQVJDSCwgMjgpLCB0aW1lKTsKCgkJU3lzdGVtLm91dC5wcmludGxuKFpvbmVkRGF0ZVRpbWUub2YobGR0LCB6b25lSWQpLmdldE9mZnNldCgpKTsKCQkvLyBBbHRlcm5hdGl2ZWx5CgkJU3lzdGVtLm91dC5wcmludGxuKHpvbmVJZC5nZXRSdWxlcygpLmdldE9mZnNldChsZHQpKTsKCX0KfQ==