Статический метод firstInMonth

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

Импорт

kotlinimport java.time.DayOfWeek
import java.time.temporal.TemporalAdjusters

Синтаксис

kotlinfun firstInMonth(dayOfWeek: DayOfWeek): TemporalAdjuster

Пример

Найдем первый понедельник в декабре 2025 года:

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

val date = LocalDate.of(2025, 12, 1)
val firstMonday = date.with(TemporalAdjusters.firstInMonth(DayOfWeek.MONDAY))
println(firstMonday)

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

kotlinString "2025-12-01"

Пример

Найдем первую пятницу в июле 2025 года:

kotlinval date = LocalDate.of(2025, 7, 1)
val firstFriday = date.with(TemporalAdjusters.firstInMonth(DayOfWeek.FRIDAY))
println(firstFriday)

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

kotlinString "2025-07-04"

Пример

Получим первый понедельник текущего месяца:

kotlinval today = LocalDate.now()
val firstMondayThisMonth = today.with(TemporalAdjusters.firstInMonth(DayOfWeek.MONDAY))
println("First Monday of this month: $firstMondayThisMonth")

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

kotlinString "First Monday of this month: 2025-XX-XX"

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

  • метод lastInMonth класса TemporalAdjusters,
    который находит последнее вхождение дня недели в месяце
  • метод dayOfWeekInMonth класса TemporalAdjusters,
    который находит n-ное вхождение дня недели в месяце
  • метод firstDayOfMonth класса TemporalAdjusters,
    который возвращает первый день месяца
  • класс DayOfWeek,
    который представляет дни недели