АКЦИЯ: бесплатные месячные курсы по созданию сайтов
на выбор: верстка, JavaScript, PHP, Python или фреймворки. Сегодня последний день для записи! Жми!
1026 of 1310 menu
Новый формат обучения! Репетиторство по программированию. Есть еще 3 свободных места! Жми для подробностей.

Класс TemporalAdjusters

Класс TemporalAdjusters предоставляет набор стандартных корректировщиков для изменения объектов временных типов, таких как LocalDate. Корректировщики позволяют находить первый или последний день месяца, следующий указанный день недели, последний день года и другие распространенные временные точки.

Импорт

import java.time.LocalDate import java.time.DayOfWeek import java.time.temporal.TemporalAdjusters

Синтаксис

// Первый день месяца fun firstDayOfMonth(): TemporalAdjuster // Последний день месяца fun lastDayOfMonth(): TemporalAdjuster // Первый день следующего месяца fun firstDayOfNextMonth(): TemporalAdjuster // Первый день года fun firstDayOfYear(): TemporalAdjuster // Последний день года fun lastDayOfYear(): TemporalAdjuster // Первый день следующего года fun firstDayOfNextYear(): TemporalAdjuster // Первый указанный день недели в месяце fun firstInMonth(dayOfWeek: DayOfWeek): TemporalAdjuster // Последний указанный день недели в месяце fun lastInMonth(dayOfWeek: DayOfWeek): TemporalAdjuster // n-ный указанный день недели в месяце fun dayOfWeekInMonth(ordinal: Int, dayOfWeek: DayOfWeek): TemporalAdjuster // Следующий указанный день недели fun next(dayOfWeek: DayOfWeek): TemporalAdjuster // Следующий указанный день недели (или тот же, если уже совпадает) fun nextOrSame(dayOfWeek: DayOfWeek): TemporalAdjuster // Предыдущий указанный день недели fun previous(dayOfWeek: DayOfWeek): TemporalAdjuster // Предыдущий указанный день недели (или тот же, если уже совпадает) fun previousOrSame(dayOfWeek: DayOfWeek): TemporalAdjuster

Пример

Найдем первый день месяца для даты "2025-07-15":

val date = LocalDate.of(2025, 7, 15) val firstDay = date.with(TemporalAdjusters.firstDayOfMonth()) println(firstDay)

Результат выполнения кода:

String "2025-07-01"

Пример

Найдем последний день месяца для даты "2025-02-15":

val date = LocalDate.of(2025, 2, 15) val lastDay = date.with(TemporalAdjusters.lastDayOfMonth()) println(lastDay)

Результат выполнения кода:

String "2025-02-28"

Пример

Найдем следующий понедельник после даты "2025-07-15":

val date = LocalDate.of(2025, 7, 15) val nextMonday = date.with(TemporalAdjusters.next(DayOfWeek.MONDAY)) println(nextMonday)

Результат выполнения кода:

String "2025-07-21"

Пример

Найдем последнюю пятницу месяца для даты "2025-07-15":

val date = LocalDate.of(2025, 7, 15) val lastFriday = date.with(TemporalAdjusters.lastInMonth(DayOfWeek.FRIDAY)) println(lastFriday)

Результат выполнения кода:

String "2025-07-25"

Пример

Найдем первый день следующего года для даты "2025-07-15":

val date = LocalDate.of(2025, 7, 15) val firstDayNextYear = date.with(TemporalAdjusters.firstDayOfNextYear()) println(firstDayNextYear)

Результат выполнения кода:

String "2026-01-01"

Смотрите также

  • класс LocalDate,
    который представляет дату без времени
  • перечисление DayOfWeek,
    которое представляет дни недели
  • метод plusDays класса LocalDate,
    который добавляет дни к дате