Функция toLocalDate
Функция toLocalDate класса ZonedDateTime преобразует объект ZonedDateTime в объект LocalDate.
При этом отбрасывается информация о времени и часовом поясе, сохраняется только дата.
Импорт
import java.time.ZonedDateTime
import java.time.LocalDate
Синтаксис
fun toLocalDate(): LocalDate
Пример
Преобразуем объект ZonedDateTime в LocalDate:
val zonedDateTime = ZonedDateTime.parse("2025-07-15T10:30:45+03:00[Europe/Moscow]")
val localDate = zonedDateTime.toLocalDate()
println(localDate)
Результат выполнения кода:
String "2025-07-15"
Пример
Получим компоненты даты после преобразования:
val zonedDateTime = ZonedDateTime.parse("2025-12-31T23:59:59+01:00[Europe/Paris]")
val localDate = zonedDateTime.toLocalDate()
val year = localDate.year
val month = localDate.monthValue
val day = localDate.dayOfMonth
println("Year: $year, Month: $month, Day: $day")
Результат выполнения кода:
String "Year: 2025, Month: 12, Day: 31"
Пример
Сравним даты после преобразования из разных часовых поясов:
val zdt1 = ZonedDateTime.parse("2025-01-01T00:00:00+09:00[Asia/Tokyo]")
val zdt2 = ZonedDateTime.parse("2024-12-31T15:00:00-05:00[America/New_York]")
val date1 = zdt1.toLocalDate()
val date2 = zdt2.toLocalDate()
println("Tokyo date: $date1")
println("New York date: $date2")
println("Dates are equal: ${date1 == date2}")
Результат выполнения кода:
String "Tokyo date: 2025-01-01"
String "New York date: 2024-12-31"
String "Dates are equal: false"
Смотрите также
-
функцию
toLocalTimeклассаZonedDateTime,
которая преобразует в локальное время -
функцию
toLocalDateTimeклассаZonedDateTime,
которая преобразует в локальную дату и время -
функцию
toLocalDateклассаLocalDateTime,
которая преобразует LocalDateTime в LocalDate -
класс
LocalDate,
который представляет дату без времени и часового пояса