Package com.ericsson.otp.erlang

## Class OtpErlangDouble

- java.lang.Object
- - com.ericsson.otp.erlang.OtpErlangObject
  - - com.ericsson.otp.erlang.OtpErlangDouble

- All Implemented Interfaces:
    `java.io.Serializable`, `java.lang.Cloneable`
  Direct Known Subclasses:
    `OtpErlangFloat`

      public class OtpErlangDouble
      extends OtpErlangObject

  Provides a Java representation of Erlang floats and doubles. Erlang defines only one floating point numeric type, however this class and its subclass `OtpErlangFloat` are used to provide representations corresponding to the Java types Double and Float.
  See Also:
    Serialized Form

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from class com.ericsson.otp.erlang.OtpErlangObject

      `OtpErlangObject.Hash`

  - ### Field Summary

    - ### Fields inherited from class com.ericsson.otp.erlang.OtpErlangObject

      `hashCodeValue`

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `OtpErlangDouble​(double d)` | Create an Erlang float from the given double value.
    `OtpErlangDouble​(OtpInputStream buf)` | Create an Erlang float from a stream containing a double encoded in Erlang external format.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `protected int` | `doHashCode()` |
    `double` | `doubleValue()` | Get the value, as a double.
    `void` | `encode​(OtpOutputStream buf)` | Convert this double to the equivalent Erlang external representation.
    `boolean` | `equals​(java.lang.Object o)` | Determine if two floats are equal.
    `float` | `floatValue()` | Get the value, as a float.
    `java.lang.String` | `toString()` | Get the string representation of this double.

    - ### Methods inherited from class com.ericsson.otp.erlang.OtpErlangObject

      `bind, clone, decode, hashCode, match`

    - ### Methods inherited from class java.lang.Object

      `finalize, getClass, notify, notifyAll, wait, wait, wait`

- - ### Constructor Detail

    - #### OtpErlangDouble

          public OtpErlangDouble​(double d)

      Create an Erlang float from the given double value.

    - #### OtpErlangDouble

          public OtpErlangDouble​(OtpInputStream buf)
                          throws OtpErlangDecodeException

      Create an Erlang float from a stream containing a double encoded in Erlang external format.
      Parameters:
        `buf` - the stream containing the encoded value.
      Throws:
        `OtpErlangDecodeException` - if the buffer does not contain a valid external representation of an Erlang float.

  - ### Method Detail

    - #### doubleValue

          public double doubleValue()

      Get the value, as a double.
      Returns:
        the value of this object, as a double.

    - #### floatValue

          public float floatValue()
                           throws OtpErlangRangeException

      Get the value, as a float.
      Returns:
        the value of this object, as a float.
      Throws:
        `OtpErlangRangeException` - if the value cannot be represented as a float.

    - #### toString

          public java.lang.String toString()

      Get the string representation of this double.
      Specified by:
        `toString` in class `OtpErlangObject`
      Returns:
        the string representation of this double.

    - #### encode

          public void encode​(OtpOutputStream buf)

      Convert this double to the equivalent Erlang external representation.
      Specified by:
        `encode` in class `OtpErlangObject`
      Parameters:
        `buf` - an output stream to which the encoded value should be written.

    - #### equals

          public boolean equals​(java.lang.Object o)

      Determine if two floats are equal. Floats are equal if they contain the same value.
      Specified by:
        `equals` in class `OtpErlangObject`
      Parameters:
        `o` - the float to compare to.
      Returns:
        true if the floats have the same value.

    - #### doHashCode

          protected int doHashCode()

      Overrides:
        `doHashCode` in class `OtpErlangObject`