Q
- The type of the quantity.public class NumberQuantity<Q extends javax.measure.Quantity<Q>> extends AbstractQuantity<Q> implements java.io.Serializable
ComparableQuantity
that keep Number
as possible otherwise converts to
DecimalQuantity
, this object is immutable.AbstractQuantity
,
Quantity
,
ComparableQuantity
,
Serialized FormModifier and Type | Field and Description |
---|---|
private boolean |
isBig
Indicates if this quantity is big.
|
private static long |
serialVersionUID |
private java.lang.Number |
value |
NONE, ONE
Modifier | Constructor and Description |
---|---|
protected |
NumberQuantity(java.lang.Number number,
javax.measure.Unit<Q> unit) |
Modifier and Type | Method and Description |
---|---|
ComparableQuantity<Q> |
add(javax.measure.Quantity<Q> that) |
java.math.BigDecimal |
decimalValue(javax.measure.Unit<Q> unit,
java.math.MathContext ctx) |
ComparableQuantity<Q> |
divide(java.lang.Number that) |
ComparableQuantity<?> |
divide(javax.measure.Quantity<?> that) |
double |
doubleValue(javax.measure.Unit<Q> unit) |
java.lang.Number |
getValue()
Returns the numeric value of the quantity.
|
ComparableQuantity<Q> |
inverse() |
boolean |
isBig()
Indicates if this measured amount is a big number, i.E.
|
ComparableQuantity<Q> |
multiply(java.lang.Number that) |
ComparableQuantity<?> |
multiply(javax.measure.Quantity<?> that) |
static <Q extends javax.measure.Quantity<Q>> |
of(double doubleValue,
javax.measure.Unit<Q> unit)
Returns the scalar quantity for the specified
double stated in the specified unit. |
ComparableQuantity<Q> |
subtract(javax.measure.Quantity<Q> that) |
private DecimalQuantity<Q> |
toDecimalQuantity() |
asType, compareTo, divide, equals, equals, floatValue, getUnit, hashCode, intValue, inverse, isEquivalentTo, isGreaterThan, isGreaterThanOrEqualTo, isLessThan, isLessThanOrEqualTo, longValue, multiply, parse, to, to, toSI, toString
private static final long serialVersionUID
private final java.lang.Number value
private final boolean isBig
protected NumberQuantity(java.lang.Number number, javax.measure.Unit<Q> unit)
public double doubleValue(javax.measure.Unit<Q> unit)
doubleValue
in class AbstractQuantity<Q extends javax.measure.Quantity<Q>>
public java.lang.Number getValue()
AbstractQuantity
getValue
in interface javax.measure.Quantity<Q extends javax.measure.Quantity<Q>>
getValue
in interface tec.uom.lib.common.function.ValueSupplier<java.lang.Number>
getValue
in class AbstractQuantity<Q extends javax.measure.Quantity<Q>>
public boolean isBig()
isBig
in class AbstractQuantity<Q extends javax.measure.Quantity<Q>>
true
if this quantity is big; false
otherwise.public ComparableQuantity<Q> add(javax.measure.Quantity<Q> that)
public ComparableQuantity<?> multiply(javax.measure.Quantity<?> that)
public ComparableQuantity<Q> multiply(java.lang.Number that)
public ComparableQuantity<?> divide(javax.measure.Quantity<?> that)
public ComparableQuantity<Q> divide(java.lang.Number that)
public ComparableQuantity<Q> inverse()
public java.math.BigDecimal decimalValue(javax.measure.Unit<Q> unit, java.math.MathContext ctx) throws java.lang.ArithmeticException
decimalValue
in class AbstractQuantity<Q extends javax.measure.Quantity<Q>>
java.lang.ArithmeticException
public ComparableQuantity<Q> subtract(javax.measure.Quantity<Q> that)
private DecimalQuantity<Q> toDecimalQuantity()
public static <Q extends javax.measure.Quantity<Q>> AbstractQuantity<Q> of(double doubleValue, javax.measure.Unit<Q> unit)
double
stated in the specified unit.doubleValue
- the measurement value.unit
- the measurement unit.double
quantity.