public class PreciseDurationField extends BaseDurationField
PreciseDurationField is thread-safe and immutable.
Constructor and Description |
---|
PreciseDurationField(DurationFieldType type,
long unitMillis)
Constructor.
|
Modifier and Type | Method and Description |
---|---|
long |
add(long instant,
int value)
Adds a duration value (which may be negative) to the instant.
|
long |
add(long instant,
long value)
Adds a duration value (which may be negative) to the instant.
|
boolean |
equals(java.lang.Object obj)
Compares this duration field to another.
|
long |
getDifferenceAsLong(long minuendInstant,
long subtrahendInstant)
Computes the difference between two instants, as measured in the units
of this field.
|
long |
getMillis(int value,
long instant)
Get the millisecond duration of this field from its value.
|
long |
getMillis(long value,
long instant)
Get the millisecond duration of this field from its value.
|
long |
getUnitMillis()
Returns the amount of milliseconds per unit value of this field.
|
long |
getValueAsLong(long duration,
long instant)
Get the value of this field from the milliseconds.
|
int |
hashCode()
Gets a hash code for this instance.
|
boolean |
isPrecise()
This field is precise.
|
compareTo, getDifference, getMillis, getMillis, getName, getType, getValue, getValue, getValueAsLong, isSupported, toString
subtract, subtract
public PreciseDurationField(DurationFieldType type, long unitMillis)
type
- the field typeunitMillis
- the unit millisecondspublic final boolean isPrecise()
isPrecise
in class DurationField
DurationField.getUnitMillis()
public final long getUnitMillis()
getUnitMillis
in class DurationField
DurationField.isPrecise()
public long getValueAsLong(long duration, long instant)
getValueAsLong
in class DurationField
duration
- the milliseconds to query, which may be negativeinstant
- ignoredpublic long getMillis(int value, long instant)
getMillis
in class DurationField
value
- the value of the field, which may be negativeinstant
- ignoredpublic long getMillis(long value, long instant)
getMillis
in class DurationField
value
- the value of the field, which may be negativeinstant
- ignoredpublic long add(long instant, int value)
DurationField
add
in class DurationField
instant
- the milliseconds from 1970-01-01T00:00:00Z to add tovalue
- the value to add, in the units of the fieldpublic long add(long instant, long value)
DurationField
add
in class DurationField
instant
- the milliseconds from 1970-01-01T00:00:00Z to add tovalue
- the value to add, in the units of the fieldpublic long getDifferenceAsLong(long minuendInstant, long subtrahendInstant)
DurationField
long instant = ... long v = ... long age = getDifferenceAsLong(add(instant, v), instant);The value 'age' is the same as the value 'v'.
getDifferenceAsLong
in class DurationField
minuendInstant
- the milliseconds from 1970-01-01T00:00:00Z to
subtract fromsubtrahendInstant
- the milliseconds from 1970-01-01T00:00:00Z to
subtract off the minuendpublic boolean equals(java.lang.Object obj)
equals
in class java.lang.Object
obj
- the object to compare topublic int hashCode()
hashCode
in class java.lang.Object
"Copyright © 2010 - 2020 Adobe Systems Incorporated. All Rights Reserved"