Я не могу понять одну конкретную часть документа, предоставленную для метода plusDays() в ZonedDateTimeClass. В документе указано:
Возвращает копию этого ZonedDateTime с указанным количеством
добавленных дней.
Это работает на локальной шкале времени, добавляя дни к локальной
дате-времени. Затем оно преобразуется обратно в ZonedDateTime с использованием
идентификатора зоны для получения смещения.
При обратном преобразовании в ZonedDateTime, если локальная дата и время находятся в
/>перекрытие, то смещение будет сохранено, если это возможно, в противном случае
будет использоваться более раннее смещение. Если в промежутке, локальная дата и время будут
скорректированы вперед на длину промежутка.
Этот экземпляр является неизменяемым и на него не влияет вызов этого метода.
Параметры: дни — добавляемые дни могут быть отрицательными.
Возвраты: ZonedDateTime на основе этой даты и времени с добавленными днями,
не null
Выдает: DateTimeException – если результат превышает поддерживаемый
диапазон дат
Как я могу поймите это: предположим, что у нас есть объект ZonedDateTime, представляющий 4 сентября 2022 года, 18:00 в часовом поясе America/New_York. Таким образом, этот метод сначала преобразует его в LocalDateTime, то есть потеряет информацию о часовом поясе и сохранит только дату 4 сентября 2022 г., 18:00. Он добавит к нему некоторое количество дней, скажем, 7, так что результатом будет 11 сентября 2022 года, 18:00, и теперь он преобразует его обратно в объект ZonedDateTime, предоставляя обратно информацию, связанную с часовым поясом.< /p>
Однако я не могу понять последнюю часть документации, то есть
При преобразовании обратно в ZonedDateTime , если локальная дата-время
перекрывается, то смещение будет сохранено, если это возможно, в противном случае
будет использоваться более раннее смещение. Если в промежутке, локальная дата-время будет
скорректирована вперед на длину промежутка.
Что они подразумевают под локальным дата и время совпадают? ...тогда смещение будет сохранено, если это возможно, в противном случае будет использоваться более раннее смещение. - что это за два разных смещения? Если в разрыве... - что это за разрыв?
Подробнее здесь: https://stackoverflow.com/questions/736 ... meplusdays