Calculates the amount of time until another year-month in terms of the specified unit.
This calculates the amount of time between two
YearMonth objects in terms of a single
TemporalUnit. The start and end points are
this and the specified year-month. The result will be negative if the end is before the start. The
Temporal passed to this method is converted to a
from(TemporalAccessor). For example, the amount in years between two year-months can be calculated using
startYearMonth.until(endYearMonth, YEARS) .
The calculation returns a whole number, representing the number of complete units between the two year-months. For example, the amount in decades between 2012-06 and 2032-05 will only be one decade as it is one month short of two decades.
There are two equivalent ways of using this method. The first is to invoke this method. The second is to use
TemporalUnit.between(Temporal, Temporal) :
// these two lines are equivalent
amount = start.until(end, MONTHS);
amount = MONTHS.between(start, end);
The choice should be made based on which makes the code more readable.
The calculation is implemented in this method for
ChronoUnit. The units
ERAS are supported. Other
ChronoUnit values will throw an exception.
If the unit is not a
ChronoUnit, then the result of this method is obtained by invoking
TemporalUnit.between(Temporal, Temporal) passing
this as the first argument and the converted input temporal as the second argument.
This instance is immutable and unaffected by this method call.