# ``Swift/Double``

## Topics

### Converting Integers

- ``Swift/Double/init(_:)-5blrp``
- ``Swift/Double/init(_:)-84ohu``

### Converting Strings

- ``Swift/Double/init(_:)-5wmm8``
- ``Swift/Double/init(_:)-15kej``

### Converting Floating-Point Values

- ``Swift/Double/init(_:)-1488d``
- ``Swift/Double/init(_:)-o1k9``
- ``Swift/Double/init(_:)-5h7qh``
- ``Swift/Double/init(_:)-aeox``
- ``Swift/Double/init(_:)-9z7ob``
- ``Swift/Double/init(sign:exponent:significand:)``
- ``Swift/Double/init(signOf:magnitudeOf:)-4olpd``
- ``Swift/Double/init(_:)-1oh9r``

### Converting with No Loss of Precision

These initializers result in `nil` if the value passed can't be represented without
any loss of precision.

- ``Swift/Double/init(exactly:)-8esra``
- ``Swift/Double/init(exactly:)-1h1oc``
- ``Swift/Double/init(exactly:)-2uexo``
- ``Swift/Double/init(exactly:)-2l6p1``
- ``Swift/Double/init(exactly:)-7cl0t``
- ``Swift/Double/init(exactly:)-50ofc``
- ``Swift/Double/init(exactly:)-63925``

### Creating a Random Value

- ``Swift/Double/random(in:)-6idef``
- ``Swift/Double/random(in:using:)-1m6gd``
- ``Swift/Double/random(in:)-5o5ha``
- ``Swift/Double/random(in:using:)-613hz``

### Performing Calculations

- <doc:floating-point-operators-for-double>
- ``Swift/Double/addingProduct(_:_:)``
- ``Swift/Double/addProduct(_:_:)``
- ``Swift/Double/squareRoot()``
- ``Swift/Double/formSquareRoot()``
- ``Swift/Double/remainder(dividingBy:)``
- ``Swift/Double/formRemainder(dividingBy:)``
- ``Swift/Double/truncatingRemainder(dividingBy:)``
- ``Swift/Double/formTruncatingRemainder(dividingBy:)``
- ``Swift/Double/negate()-43dca``

### Rounding Values

- ``Swift/Double/rounded()``
- ``Swift/Double/rounded(_:)``
- ``Swift/Double/round()``
- ``Swift/Double/round(_:)``

### Comparing Values

- <doc:floating-point-operators-for-double>
- ``Swift/Double/isEqual(to:)``
- ``Swift/Double/isLess(than:)``
- ``Swift/Double/isLessThanOrEqualTo(_:)``
- ``Swift/Double/isTotallyOrdered(belowOrEqualTo:)``
- ``Swift/Double/minimum(_:_:)``
- ``Swift/Double/minimumMagnitude(_:_:)``
- ``Swift/Double/maximum(_:_:)``
- ``Swift/Double/maximumMagnitude(_:_:)``

### Finding the Sign and Magnitude

- ``Swift/Double/magnitude-swift.property``
- ``Swift/Double/sign``
- ``Swift/Double/Magnitude-swift.typealias``

### Querying a Double

- ``Swift/Double/ulp``
- ``Swift/Double/significand``
- ``Swift/Double/exponent-swift.property``
- ``Swift/Double/nextUp``
- ``Swift/Double/nextDown``
- ``Swift/Double/binade``

### Accessing Numeric Constants

- ``Swift/Double/pi``
- ``Swift/Double/infinity``
- ``Swift/Double/greatestFiniteMagnitude``
- ``Swift/Double/nan``
- ``Swift/Double/signalingNaN``
- ``Swift/Double/ulpOfOne-5gc7y``
- ``Swift/Double/leastNonzeroMagnitude``
- ``Swift/Double/leastNormalMagnitude``
- ``Swift/Double/zero``

### Working with Binary Representation

- ``Swift/Double/bitPattern``
- ``Swift/Double/significandBitPattern``
- ``Swift/Double/significandWidth``
- ``Swift/Double/exponentBitPattern``
- ``Swift/Double/significandBitCount``
- ``Swift/Double/exponentBitCount``
- ``Swift/Double/radix``
- ``Swift/Double/init(bitPattern:)``
- ``Swift/Double/init(sign:exponentBitPattern:significandBitPattern:)``
- ``Swift/Double/init(nan:signaling:)``
- ``Swift/Double/Exponent-swift.typealias``
- ``Swift/Double/RawSignificand``

### Querying a Double's State

- ``Swift/Double/isZero``
- ``Swift/Double/isFinite``
- ``Swift/Double/isInfinite``
- ``Swift/Double/isNaN``
- ``Swift/Double/isSignalingNaN``
- ``Swift/Double/isNormal``
- ``Swift/Double/isSubnormal``
- ``Swift/Double/isCanonical``
- ``Swift/Double/floatingPointClass``

### Encoding and Decoding Values

- ``Swift/Double/encode(to:)``
- ``Swift/Double/init(from:)-3crx3``

### Creating a Range

- ``Swift/Double/..<(_:_:)``
- ``Swift/Double/...(_:_:)``

### Describing a Double

- ``Swift/Double/description``
- ``Swift/Double/debugDescription``
- ``Swift/Double/customMirror``
- ``Swift/Double/hash(into:)``

### Infrequently Used Functionality

- ``Swift/Double/init()``
- ``Swift/Double/init(floatLiteral:)``
- ``Swift/Double/init(integerLiteral:)-605xp``
- ``Swift/Double/init(integerLiteral:)-6hc7j``
- ``Swift/Double/advanced(by:)``
- ``Swift/Double/distance(to:)``
- ``Swift/Double/write(to:)``

### SIMD-Supporting Types

- ``Swift/Double/SIMDMaskScalar``
- ``Swift/Double/SIMD2Storage``
- ``Swift/Double/SIMD4Storage``
- ``Swift/Double/SIMD8Storage``
- ``Swift/Double/SIMD16Storage``
- ``Swift/Double/SIMD32Storage``
- ``Swift/Double/SIMD64Storage``

### Deprecated

- ``Swift/Double/customPlaygroundQuickLook``
