Class BaseDoubleEncodedValue

    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      int compareTo​(EncodedValue o)
      Compare this DoubleEncodedValue to another EncodedValue.
      boolean equals​(java.lang.Object o)
      Compares this DoubleEncodedValue to another DoubleEncodedValue for equality.
      int getValueType()
      Returns the type of this encoded value.
      int hashCode()
      Returns a hashcode for this EncodedDoubleValue.
      java.lang.String toString()  
      • Methods inherited from class java.lang.Object

        clone, finalize, getClass, notify, notifyAll, wait, wait, wait
    • Constructor Detail

      • BaseDoubleEncodedValue

        public BaseDoubleEncodedValue()
    • Method Detail

      • hashCode

        public int hashCode()
        Description copied from interface: DoubleEncodedValue
        Returns a hashcode for this EncodedDoubleValue. This hashCode is defined to be the following:
         
         long v = Double.doubleToRawLongBits(getValue());
         int hashCode = (int)(v^(v>>>32));
         
        Note: This is slightly different than the definition of Double.hashCode(). This uses doubleToRawLongBits() instead of doubleToLongBits(), in order to preserve as much information as possible.
        Specified by:
        hashCode in interface DoubleEncodedValue
        Overrides:
        hashCode in class java.lang.Object
        Returns:
        The hash code value for this EncodedDoubleValue
      • equals

        public boolean equals​(@Nullable
                              java.lang.Object o)
        Description copied from interface: DoubleEncodedValue
        Compares this DoubleEncodedValue to another DoubleEncodedValue for equality. This DoubleEncodedValue is equal to another DoubleEncodedValue if the values returned by getValue().doubleToRawLongBits() are equal. Note: this isn't quite the same as getValue() == getValue(), due to various NaN issues and signed zero issues.
        Specified by:
        equals in interface DoubleEncodedValue
        Overrides:
        equals in class java.lang.Object
        Parameters:
        o - The object to be compared for equality with this DoubleEncodedValue
        Returns:
        true if the specified object is equal to this DoubleEncodedValue
      • compareTo

        public int compareTo​(@Nonnull
                             EncodedValue o)
        Description copied from interface: DoubleEncodedValue
        Compare this DoubleEncodedValue to another EncodedValue. The comparison is first done on the return values of getValueType(), and then if the other value is another DoubleEncodedValue, the return values of getValue() are compared, using the semantics of Double.compare()
        Specified by:
        compareTo in interface java.lang.Comparable<EncodedValue>
        Specified by:
        compareTo in interface DoubleEncodedValue
        Parameters:
        o - The EncodedValue to compare with this DoubleEncodedValue
        Returns:
        An integer representing the result of the comparison
      • getValueType

        public int getValueType()
        Description copied from interface: EncodedValue
        Returns the type of this encoded value. The returned integer will be one of the ValueType.* constants.
        Specified by:
        getValueType in interface EncodedValue
        Returns:
        The type of this encoded value
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object