## Uses of Interface
java.time.temporal.TemporalAdjuster

- Packages that use TemporalAdjuster
  Package | Description
  --- | ---
  java.time | The main API for dates, times, instants, and durations.
  java.time.chrono | Generic API for calendar systems other than the default ISO.
  java.time.temporal | Access to date and time using fields and units, and date time adjusters.

- - ### Uses of TemporalAdjuster in java.time

    Classes in java.time that implement TemporalAdjuster
    Modifier and Type | Class | Description
    --- | --- | ---
    `class` | `DayOfWeek` | A day-of-week, such as 'Tuesday'.
    `class` | `Instant` | An instantaneous point on the time-line.
    `class` | `LocalDate` | A date without a time-zone in the ISO-8601 calendar system, such as `2007-12-03`.
    `class` | `LocalDateTime` | A date-time without a time-zone in the ISO-8601 calendar system, such as `2007-12-03T10:15:30`.
    `class` | `LocalTime` | A time without a time-zone in the ISO-8601 calendar system, such as `10:15:30`.
    `class` | `Month` | A month-of-year, such as 'July'.
    `class` | `MonthDay` | A month-day in the ISO-8601 calendar system, such as `--12-03`.
    `class` | `OffsetDateTime` | A date-time with an offset from UTC/Greenwich in the ISO-8601 calendar system, such as `2007-12-03T10:15:30+01:00`.
    `class` | `OffsetTime` | A time with an offset from UTC/Greenwich in the ISO-8601 calendar system, such as `10:15:30+01:00`.
    `class` | `Year` | A year in the ISO-8601 calendar system, such as `2007`.
    `class` | `YearMonth` | A year-month in the ISO-8601 calendar system, such as `2007-12`.
    `class` | `ZoneOffset` | A time-zone offset from Greenwich/UTC, such as `+02:00`.

    Methods in java.time with parameters of type TemporalAdjuster
    Modifier and Type | Method | Description
    --- | --- | ---
    `Instant` | Instant.`with​(TemporalAdjuster adjuster)` | Returns an adjusted copy of this instant.
    `LocalDate` | LocalDate.`with​(TemporalAdjuster adjuster)` | Returns an adjusted copy of this date.
    `LocalDateTime` | LocalDateTime.`with​(TemporalAdjuster adjuster)` | Returns an adjusted copy of this date-time.
    `LocalTime` | LocalTime.`with​(TemporalAdjuster adjuster)` | Returns an adjusted copy of this time.
    `OffsetDateTime` | OffsetDateTime.`with​(TemporalAdjuster adjuster)` | Returns an adjusted copy of this date-time.
    `OffsetTime` | OffsetTime.`with​(TemporalAdjuster adjuster)` | Returns an adjusted copy of this time.
    `Year` | Year.`with​(TemporalAdjuster adjuster)` | Returns an adjusted copy of this year.
    `YearMonth` | YearMonth.`with​(TemporalAdjuster adjuster)` | Returns an adjusted copy of this year-month.
    `ZonedDateTime` | ZonedDateTime.`with​(TemporalAdjuster adjuster)` | Returns an adjusted copy of this date-time.

  - ### Uses of TemporalAdjuster in java.time.chrono

    Subinterfaces of TemporalAdjuster in java.time.chrono
    Modifier and Type | Interface | Description
    --- | --- | ---
    `interface` | `ChronoLocalDate` | A date without time-of-day or time-zone in an arbitrary chronology, intended for advanced globalization use cases.
    `interface` | `ChronoLocalDateTime<D extends ChronoLocalDate>` | A date-time without a time-zone in an arbitrary chronology, intended for advanced globalization use cases.
    `interface` | `Era` | An era of the time-line.

    Classes in java.time.chrono that implement TemporalAdjuster
    Modifier and Type | Class | Description
    --- | --- | ---
    `class` | `HijrahDate` | A date in the Hijrah calendar system.
    `class` | `HijrahEra` | An era in the Hijrah calendar system.
    `class` | `IsoEra` | An era in the ISO calendar system.
    `class` | `JapaneseDate` | A date in the Japanese Imperial calendar system.
    `class` | `JapaneseEra` | An era in the Japanese Imperial calendar system.
    `class` | `MinguoDate` | A date in the Minguo calendar system.
    `class` | `MinguoEra` | An era in the Minguo calendar system.
    `class` | `ThaiBuddhistDate` | A date in the Thai Buddhist calendar system.
    `class` | `ThaiBuddhistEra` | An era in the Thai Buddhist calendar system.

    Methods in java.time.chrono with parameters of type TemporalAdjuster
    Modifier and Type | Method | Description
    --- | --- | ---
    `default ChronoLocalDate` | ChronoLocalDate.`with​(TemporalAdjuster adjuster)` | Returns an adjusted object of the same type as this object with the adjustment made.
    `default ChronoLocalDateTime<D>` | ChronoLocalDateTime.`with​(TemporalAdjuster adjuster)` | Returns an adjusted object of the same type as this object with the adjustment made.
    `default ChronoZonedDateTime<D>` | ChronoZonedDateTime.`with​(TemporalAdjuster adjuster)` | Returns an adjusted object of the same type as this object with the adjustment made.
    `HijrahDate` | HijrahDate.`with​(TemporalAdjuster adjuster)` | Returns an adjusted object of the same type as this object with the adjustment made.
    `JapaneseDate` | JapaneseDate.`with​(TemporalAdjuster adjuster)` | Returns an adjusted object of the same type as this object with the adjustment made.
    `MinguoDate` | MinguoDate.`with​(TemporalAdjuster adjuster)` | Returns an adjusted object of the same type as this object with the adjustment made.
    `ThaiBuddhistDate` | ThaiBuddhistDate.`with​(TemporalAdjuster adjuster)` | Returns an adjusted object of the same type as this object with the adjustment made.

  - ### Uses of TemporalAdjuster in java.time.temporal

    Methods in java.time.temporal that return TemporalAdjuster
    Modifier and Type | Method | Description
    --- | --- | ---
    `static TemporalAdjuster` | TemporalAdjusters.`dayOfWeekInMonth​(int ordinal, DayOfWeek dayOfWeek)` | Returns the day-of-week in month adjuster, which returns a new date with the ordinal day-of-week based on the month.
    `static TemporalAdjuster` | TemporalAdjusters.`firstDayOfMonth()` | Returns the "first day of month" adjuster, which returns a new date set to the first day of the current month.
    `static TemporalAdjuster` | TemporalAdjusters.`firstDayOfNextMonth()` | Returns the "first day of next month" adjuster, which returns a new date set to the first day of the next month.
    `static TemporalAdjuster` | TemporalAdjusters.`firstDayOfNextYear()` | Returns the "first day of next year" adjuster, which returns a new date set to the first day of the next year.
    `static TemporalAdjuster` | TemporalAdjusters.`firstDayOfYear()` | Returns the "first day of year" adjuster, which returns a new date set to the first day of the current year.
    `static TemporalAdjuster` | TemporalAdjusters.`firstInMonth​(DayOfWeek dayOfWeek)` | Returns the first in month adjuster, which returns a new date in the same month with the first matching day-of-week.
    `static TemporalAdjuster` | TemporalAdjusters.`lastDayOfMonth()` | Returns the "last day of month" adjuster, which returns a new date set to the last day of the current month.
    `static TemporalAdjuster` | TemporalAdjusters.`lastDayOfYear()` | Returns the "last day of year" adjuster, which returns a new date set to the last day of the current year.
    `static TemporalAdjuster` | TemporalAdjusters.`lastInMonth​(DayOfWeek dayOfWeek)` | Returns the last in month adjuster, which returns a new date in the same month with the last matching day-of-week.
    `static TemporalAdjuster` | TemporalAdjusters.`next​(DayOfWeek dayOfWeek)` | Returns the next day-of-week adjuster, which adjusts the date to the first occurrence of the specified day-of-week after the date being adjusted.
    `static TemporalAdjuster` | TemporalAdjusters.`nextOrSame​(DayOfWeek dayOfWeek)` | Returns the next-or-same day-of-week adjuster, which adjusts the date to the first occurrence of the specified day-of-week after the date being adjusted unless it is already on that day in which case the same object is returned.
    `static TemporalAdjuster` | TemporalAdjusters.`ofDateAdjuster​(UnaryOperator<LocalDate> dateBasedAdjuster)` | Obtains a `TemporalAdjuster` that wraps a date adjuster.
    `static TemporalAdjuster` | TemporalAdjusters.`previous​(DayOfWeek dayOfWeek)` | Returns the previous day-of-week adjuster, which adjusts the date to the first occurrence of the specified day-of-week before the date being adjusted.
    `static TemporalAdjuster` | TemporalAdjusters.`previousOrSame​(DayOfWeek dayOfWeek)` | Returns the previous-or-same day-of-week adjuster, which adjusts the date to the first occurrence of the specified day-of-week before the date being adjusted unless it is already on that day in which case the same object is returned.

    Methods in java.time.temporal with parameters of type TemporalAdjuster
    Modifier and Type | Method | Description
    --- | --- | ---
    `default Temporal` | Temporal.`with​(TemporalAdjuster adjuster)` | Returns an adjusted object of the same type as this object with the adjustment made.