Home Reference Source
public class | source

DefaultInterfaceTemporal

Extends:

TemporalAccessorTemporal → DefaultInterfaceTemporal

Method Summary

Public Methods
public

Returns an object of the same type as this object with an amount subtracted.

public

minusAmountUnit(amountToSubtract: number, unit: TemporalUnit): Temporal

Returns an object of the same type as this object with the specified period subtracted.

public

Returns an object of the same type as this object with an amount added.

public

Returns an adjusted object of the same type as this object with the adjustment made.

Inherited Summary

From class TemporalAccessor
public

get(field: TemporalField): number

Gets the value of the specified field as an int.

public

query(query: TemporalQuery): *

Queries this date-time.

public

Gets the range of valid values for the specified field.

From class Temporal
public

isSupported(unit: TemporalUnit): boolean

Checks if the specified unit is supported.

public

function overloading for Temporal.plus

public

Returns an object of the same type as this object with an amount subtracted.

public

minusAmountUnit(amountToSubtract: number, unit: TemporalUnit): Temporal

Returns an object of the same type as this object with the specified period subtracted.

public

function overloading for Temporal.plus

public

Returns an object of the same type as this object with an amount added.

public

plusAmountUnit(amountToAdd: number, unit: TemporalUnit): Temporal

Returns an object of the same type as this object with the specified period added.

public

until(endTemporal: Temporal, unit: TemporalUnit): number

Calculates the period between this temporal and another temporal in terms of the specified unit.

public

function overloading for Temporal.with

public

Returns an adjusted object of the same type as this object with the adjustment made.

public

withFieldValue(field: TemporalField, newValue: number): Temporal

Returns an object of the same type as this object with the specified field altered.

Public Methods

public minusAmount(amount: TemporalAmount): Temporal source

Returns an object of the same type as this object with an amount subtracted. This adjusts this temporal, subtracting according to the rules of the specified amount. The amount is typically a Period but may be any other type implementing the TemporalAmount interface, such as Duration.

Some example code indicating how and why this method is used:

  date = date.minus(period);                  // subtract a Period instance
  date = date.minus(duration);                // subtract a Duration instance
  date = date.minus(workingDays(6));          // example user-written workingDays method

Note that calling plus followed by minus is not guaranteed to return the same date-time.

Specification for implementors

Implementations must not alter either this object. Instead, an adjusted copy of the original must be returned. This provides equivalent, safe behavior for immutable and mutable implementations.

Override:

Temporal#minusAmount

Params:

NameTypeAttributeDescription
amount TemporalAmount

the amount to subtract, not null

Return:

Temporal

an object of the same type with the specified adjustment made, not null

Throw:

*

DateTimeException - if the subtraction cannot be made

*

ArithmeticException - if numeric overflow occurs

public minusAmountUnit(amountToSubtract: number, unit: TemporalUnit): Temporal source

Returns an object of the same type as this object with the specified period subtracted. This method returns a new object based on this one with the specified period subtracted. For example, on a LocalDate, this could be used to subtract a number of years, months or days. The returned object will have the same observable type as this object.

In some cases, changing a field is not fully defined. For example, if the target object is a date representing the 31st March, then subtracting one month would be unclear. In cases like this, the field is responsible for resolving the result. Typically it will choose the previous valid date, which would be the last valid day of February in this example.

If the implementation represents a date-time that has boundaries, such as LocalTime, then the permitted units must include the boundary unit, but no multiples of the boundary unit. For example, LocalTime must accept DAYS but not WEEKS or MONTHS.

Specification for implementors

Implementations must behave in a manor equivalent to the default method behavior. Implementations must not alter either this object or the specified temporal object. Instead, an adjusted copy of the original must be returned. This provides equivalent, safe behavior for immutable and mutable implementations.

Override:

Temporal#minusAmountUnit

Params:

NameTypeAttributeDescription
amountToSubtract number

the amount of the specified unit to subtract, may be negative

unit TemporalUnit

the unit of the period to subtract, not null

Return:

Temporal

an object of the same type with the specified period subtracted, not null

Throw:

*

DateTimeException - if the unit cannot be subtracted

*

ArithmeticException - if numeric overflow occurs

public plusAmount(amount: TemporalAmount): Temporal source

Returns an object of the same type as this object with an amount added. This adjusts this temporal, adding according to the rules of the specified amount. The amount is typically a Period but may be any other type implementing the TemporalAmount interface, such as Duration.

Some example code indicating how and why this method is used:

  date = date.plus(period);                  // add a Period instance
  date = date.plus(duration);                // add a Duration instance
  date = date.plus(workingDays(6));          // example user-written workingDays method

Note that calling plus followed by minus is not guaranteed to return the same date-time.

Specification for implementors

Implementations must not alter either this object. Instead, an adjusted copy of the original must be returned. This provides equivalent, safe behavior for immutable and mutable implementations.

Override:

Temporal#plusAmount

Params:

NameTypeAttributeDescription
amount TemporalAmount

the amount to add, not null

Return:

Temporal

an object of the same type with the specified adjustment made, not null

Throw:

*

DateTimeException - if the addition cannot be made

*

ArithmeticException - if numeric overflow occurs

public withAdjuster(adjuster: TemporalAdjuster): Temporal source

Returns an adjusted object of the same type as this object with the adjustment made. This adjusts this date-time according to the rules of the specified adjuster. A simple adjuster might simply set the one of the fields, such as the year field. A more complex adjuster might set the date to the last day of the month. A selection of common adjustments is provided in TemporalAdjusters. These include finding the "last day of the month" and "next Wednesday". The adjuster is responsible for handling special cases, such as the varying lengths of month and leap years.

Some example code indicating how and why this method is used:

  date = date.with(Month.JULY);        // most key classes implement TemporalAdjuster
  date = date.with(lastDayOfMonth());  // static import from TemporalAdjusters
  date = date.with(next(WEDNESDAY));   // static import from TemporalAdjusters and DayOfWeek

Specification for implementors

Implementations must not alter either this object. Instead, an adjusted copy of the original must be returned. This provides equivalent, safe behavior for immutable and mutable implementations.

Override:

Temporal#withAdjuster

Params:

NameTypeAttributeDescription
adjuster TemporalAdjuster

the adjuster to use, not null

Return:

Temporal

an object of the same type with the specified adjustment made, not null

Throw:

*

DateTimeException - if unable to make the adjustment

*

ArithmeticException - if numeric overflow occurs