# Java: Range of a double

A `double`

is a **64-bit IEEE 754 floating point**.

Min value (inclusive) and max value (inclusive):

−1.7976931348623157×10

⋯

1.7976931348623157×10

^{308}⋯

1.7976931348623157×10

^{308}or, equivalently

−1.111⋯1×2

^{1023}… 1.111⋯1×2^{1023}The **maximum value** is available as a constant: `Double.MAX_VALUE`

.

The **minimum value** is `-Double.MAX_VALUE`

, and **not** `Double.MIN_VALUE`

. For details, see Why's Double.MIN_VALUE is positive? Integer.MIN_VALUE is negative!

The constant `Double.MIN_VALUE`

is the smallest value **greater than 0**, i.e. **not** the smallest possible value. (This constant corresponds to `Epsilon`

in .NET.) For details, see Double.MIN_VALUE vs Double.MIN_NORMAL

See ranges of all primitive types here: Ranges of Primitive Types