Class Measurement<T extends Enum<?>>

java.lang.Object
com.irurueta.units.Measurement<T>
Type Parameters:
T - a measurement unit.
All Implemented Interfaces:
Serializable
Direct Known Subclasses:
Acceleration, Angle, AngularAcceleration, AngularSpeed, Distance, Frequency, MagneticFluxDensity, Speed, Surface, Temperature, Time, Volume, Weight

public abstract class Measurement<T extends Enum<?>> extends Object implements Serializable
Base class to define a measurement unit and value.
See Also:
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    private T
    Measurement unit.
    private Number
    Measurement value.
  • Constructor Summary

    Constructors
    Modifier
    Constructor
    Description
    (package private)
    Constructor.
    protected
    Measurement(Number value, T unit)
    Constructor.
  • Method Summary

    Modifier and Type
    Method
    Description
    boolean
    equals(Measurement<T> other, double tolerance)
    Determines if two measurements are equal up to a certain tolerance.
    boolean
    Determines if two measurements are equal.
    Returns measurement unit.
    Returns measurement value.
    int
    Hash code generated for this instance.
    void
    setUnit(T unit)
    Sets measurement unit.
    void
    Sets measurement value.

    Methods inherited from class java.lang.Object

    clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
  • Field Details

    • value

      private Number value
      Measurement value.
    • unit

      private T extends Enum<?> unit
      Measurement unit.
  • Constructor Details

    • Measurement

      protected Measurement(Number value, T unit)
      Constructor.
      Parameters:
      value - measurement value.
      unit - measurement unit.
      Throws:
      IllegalArgumentException - if either value or unit is null.
    • Measurement

      Measurement()
      Constructor.
  • Method Details

    • equals

      public boolean equals(Object obj)
      Determines if two measurements are equal.
      Overrides:
      equals in class Object
      Parameters:
      obj - another object to compare.
      Returns:
      true if provided object is assumed to be equal to this instance, false otherwise.
    • hashCode

      public int hashCode()
      Hash code generated for this instance. Hash codes can be internally used by some collections to coarsely compare objects.
      Overrides:
      hashCode in class Object
      Returns:
      hash code.
    • equals

      public boolean equals(Measurement<T> other, double tolerance)
      Determines if two measurements are equal up to a certain tolerance.
      Parameters:
      other - another measurement to compare.
      tolerance - amount of tolerance to determine whether two measurements are equal or not.
      Returns:
      true if provided measurement is assumed to be equal to this instance, false otherwise.
    • getValue

      public Number getValue()
      Returns measurement value.
      Returns:
      measurement value.
    • setValue

      public void setValue(Number value)
      Sets measurement value.
      Parameters:
      value - measurement value.
      Throws:
      IllegalArgumentException - if measurement value is null.
    • getUnit

      public T getUnit()
      Returns measurement unit.
      Returns:
      measurement unit.
    • setUnit

      public void setUnit(T unit)
      Sets measurement unit.
      Parameters:
      unit - measurement unit.
      Throws:
      IllegalArgumentException - if measurement unit is null.