Class TemporalQuantity

java.lang.Object
tech.units.indriya.AbstractQuantity<javax.measure.quantity.Time>
tech.units.indriya.quantity.time.TemporalQuantity
All Implemented Interfaces:
Serializable, Comparable<javax.measure.Quantity<javax.measure.quantity.Time>>, javax.measure.Quantity<javax.measure.quantity.Time>, ComparableQuantity<javax.measure.quantity.Time>, tech.uom.lib.common.function.QuantityConverter<javax.measure.quantity.Time>, tech.uom.lib.common.function.UnitSupplier<javax.measure.quantity.Time>, tech.uom.lib.common.function.ValueSupplier<Number>

public final class TemporalQuantity extends AbstractQuantity<javax.measure.quantity.Time>
Class that represents TemporalUnit in Unit-API
Since:
1.0
See Also:
  • Field Details

  • Constructor Details

  • Method Details

    • of

      public static TemporalQuantity of(Integer number, TemporalUnit timeUnit)
      creates the TemporalQuantity using TemporalUnit and Integer
      Parameters:
      timeUnit - - time to be used
      value - - value to be used
    • of

      public static TemporalQuantity of(javax.measure.Quantity<javax.measure.quantity.Time> quantity)
      Creates a TemporalQuantity based a javax.measure.Quantity<javax.measure.quantity.Time> converted to Units.SECOND.
      Parameters:
      quantity - - quantity to be used
      Returns:
      the TemporalQuantity converted be quantity in seconds.
    • getTemporalAmount

      public TemporalAmount getTemporalAmount()
      Returns:
      the TemporalAmount
    • getTemporalUnit

      public TemporalUnit getTemporalUnit()
      Returns:
      the TemporalUnit
    • getValue

      public Integer getValue()
      get value expressed in Integer
      Specified by:
      getValue in interface javax.measure.Quantity<javax.measure.quantity.Time>
      Specified by:
      getValue in interface tech.uom.lib.common.function.ValueSupplier<Number>
      Specified by:
      getValue in class AbstractQuantity<javax.measure.quantity.Time>
      Returns:
      the value
    • toUnit

      public javax.measure.Unit<javax.measure.quantity.Time> toUnit()
      converts the TemporalUnit to Unit
      Returns:
      the getTemporalUnit() converted to Unit
    • toQuantity

      public javax.measure.Quantity<javax.measure.quantity.Time> toQuantity()
      Converts the TemporalQuantity to javax.measure.Quantity<javax.measure.quantity.Time>
      Returns:
      this class converted to Quantity
    • to

      public TemporalQuantity to(TemporalUnit timeUnit)
    • toUnit

      private static javax.measure.Unit<javax.measure.quantity.Time> toUnit(TemporalUnit timeUnit)
    • hashCode

      public int hashCode()
      Description copied from class: AbstractQuantity
      Returns the hash code for this quantity.
      Overrides:
      hashCode in class AbstractQuantity<javax.measure.quantity.Time>
      Returns:
      the hash code value.
    • equals

      public boolean equals(Object obj)
      Description copied from class: AbstractQuantity
      Compares this quantity against the specified object for strict equality (same unit and same amount).

      Similarly to the BigDecimal.equals(java.lang.Object) method which consider 2.0 and 2.00 as different objects because of different internal scales, quantities such as Quantities.getQuantity(3.0, KILOGRAM) Quantities.getQuantity(3, KILOGRAM) and Quantities.getQuantity("3 kg") might not be considered equals because of possible differences in their implementations.

      To compare quantities stated using different units or using different amount implementations the compareTo or

      invalid reference
      equals(Quantity, epsilon, epsilonUnit)
      methods should be used.

      Overrides:
      equals in class AbstractQuantity<javax.measure.quantity.Time>
      Parameters:
      obj - the object to compare with.
      Returns:
      this.getUnit.equals(obj.getUnit()) invalid input: '&'invalid input: '&' this.getValue().equals(obj.getValue())
    • toString

      public String toString()
      Description copied from class: AbstractQuantity
      Returns the String representation of this quantity. The string produced for a given quantity is always the same; it is not affected by locale. This means that it can be used as a canonical string representation for exchanging quantity, or as a key for a Hashtable, etc. Locale-sensitive quantity formatting and parsing is handled by the QuantityFormat implementations and its subclasses.
      Overrides:
      toString in class AbstractQuantity<javax.measure.quantity.Time>
      Returns:
      UnitFormat.getInternational().format(this)
    • add

      public ComparableQuantity<javax.measure.quantity.Time> add(javax.measure.Quantity<javax.measure.quantity.Time> that)
      See Also:
      • Quantity.add(Quantity)
    • subtract

      public ComparableQuantity<javax.measure.quantity.Time> subtract(javax.measure.Quantity<javax.measure.quantity.Time> that)
      See Also:
      • Quantity.subtract(Quantity)
    • divide

      public ComparableQuantity<?> divide(javax.measure.Quantity<?> that)
      See Also:
      • Quantity.divide(Quantity)
    • divide

      public ComparableQuantity<javax.measure.quantity.Time> divide(Number that)
      See Also:
      • Quantity.divide(Number)
    • multiply

      public ComparableQuantity<?> multiply(javax.measure.Quantity<?> multiplier)
      See Also:
      • Quantity.multiply(Quantity)
    • multiply

      public ComparableQuantity<javax.measure.quantity.Time> multiply(Number multiplier)
      See Also:
      • Quantity.multiply(Number)
    • inverse

      public ComparableQuantity<javax.measure.quantity.Frequency> inverse()
      See Also:
      • Quantity.inverse()
    • isBig

      public boolean isBig()
      Specified by:
      isBig in class AbstractQuantity<javax.measure.quantity.Time>
    • decimalValue

      public BigDecimal decimalValue(javax.measure.Unit<javax.measure.quantity.Time> unit) throws ArithmeticException
      Specified by:
      decimalValue in class AbstractQuantity<javax.measure.quantity.Time>
      Throws:
      ArithmeticException
    • doubleValue

      public double doubleValue(javax.measure.Unit<javax.measure.quantity.Time> unit) throws ArithmeticException
      Specified by:
      doubleValue in class AbstractQuantity<javax.measure.quantity.Time>
      Throws:
      ArithmeticException