---
title: "init(exactly:)"
framework: swift
role: symbol
role_heading: Initializer
path: "swift/int16/init(exactly:)-3vet0"
---

# init(exactly:)

Creates an integer from the given floating-point value, if it can be represented exactly.

## Declaration

```swift
init?(exactly source: Double)
```

## Parameters

- `source`: A floating-point value to convert to an integer.

## Discussion

Discussion If the value passed as source is not representable exactly, the result is nil. In the following example, the constant x is successfully created from a value of 21.0, while the attempt to initialize the constant y from 21.5 fails: let x = Int(exactly: 21.0) // x == Optional(21) let y = Int(exactly: 21.5) // y == nil
