Метод with
Метод with класса JapaneseDate возвращает копию даты с измененным указанным компонентом.
В первый параметр мы передаем поле для изменения, во второй параметр мы передаем новое значение для этого поля.
Импорт
import java.time.chrono.JapaneseDate
import java.time.temporal.ChronoField
Синтаксис
fun with(field: TemporalField, newValue: Long): JapaneseDate
Пример
Создадим японскую дату и изменим год на 2025:
val date = JapaneseDate.of(2023, 12, 31)
val newDate = date.with(ChronoField.YEAR, 2025L)
println("Original: $date, Modified: $newDate")
Результат выполнения кода:
String "Original: Japanese Heisei 35-12-31, Modified: Japanese Heisei 37-12-31"
Пример
Изменим месяц на 7 в японской дате:
val date = JapaneseDate.of(2025, 12, 31)
val newDate = date.with(ChronoField.MONTH_OF_YEAR, 7L)
println("Original: $date, Modified: $newDate")
Результат выполнения кода:
String "Original: Japanese Heisei 37-12-31, Modified: Japanese Heisei 37-07-31"
Пример
Изменим день месяца на 15:
val date = JapaneseDate.of(2025, 7, 31)
val newDate = date.with(ChronoField.DAY_OF_MONTH, 15L)
println("Original: $date, Modified: $newDate")
Результат выполнения кода:
String "Original: Japanese Heisei 37-07-31, Modified: Japanese Heisei 37-07-15"
Смотрите также
-
метод
plusклассаJapaneseDate,
который добавляет период к дате -
метод
minusклассаJapaneseDate,
который вычитает период из даты -
метод
withYearклассаLocalDate,
который изменяет год в дате -
класс
ChronoField,
который содержит поля для работы с датой и временем