Share via


Double.DoubleToLongBits(Double) Method

Definition

Returns a representation of the specified floating-point value according to the IEEE 754 floating-point "double format" bit layout.

[Android.Runtime.Register("doubleToLongBits", "(D)J", "")]
public static long DoubleToLongBits (double value);
[<Android.Runtime.Register("doubleToLongBits", "(D)J", "")>]
static member DoubleToLongBits : double -> int64

Parameters

value
Double

a double precision floating-point number.

Returns

the bits that represent the floating-point number.

Attributes

Remarks

Returns a representation of the specified floating-point value according to the IEEE 754 floating-point "double format" bit layout.

Bit 63 (the bit that is selected by the mask 0x8000000000000000L) represents the sign of the floating-point number. Bits 62-52 (the bits that are selected by the mask 0x7ff0000000000000L) represent the exponent. Bits 51-0 (the bits that are selected by the mask 0x000fffffffffffffL) represent the significand (sometimes called the mantissa) of the floating-point number.

If the argument is positive infinity, the result is 0x7ff0000000000000L.

If the argument is negative infinity, the result is 0xfff0000000000000L.

If the argument is NaN, the result is 0x7ff8000000000000L.

In all cases, the result is a long integer that, when given to the #longBitsToDouble(long) method, will produce a floating-point value the same as the argument to doubleToLongBits (except all NaN values are collapsed to a single "canonical" NaN value).

Java documentation for java.lang.Double.doubleToLongBits(double).

Portions of this page are modifications based on work created and shared by the Android Open Source Project and used according to terms described in the Creative Commons 2.5 Attribution License.

Applies to