---
title: "formIndex(_:offsetBy:)"
framework: swift
role: symbol
role_heading: Instance Method
path: "swift/array/formindex(_:offsetby:)"
---

# formIndex(_:offsetBy:)

Offsets the given index by the specified distance.

## Declaration

```swift
func formIndex(_ i: inout Self.Index, offsetBy distance: Int)
```

## Parameters

- `i`: A valid index of the collection.
- `distance`: The distance to offset i. distance must not be negative unless the collection conforms to the BidirectionalCollection protocol.

## Discussion

Discussion The value passed as distance must not offset i beyond the bounds of the collection. note: O(1) if the collection conforms to RandomAccessCollection; otherwise, O(k), where k is the absolute value of distance.

## See Also

### Manipulating Indices

- [startIndex](swift/array/startindex.md)
- [endIndex](swift/array/endindex.md)
- [index(after:)](swift/array/index(after:).md)
- [formIndex(after:)](swift/array/formindex(after:).md)
- [index(before:)](swift/array/index(before:).md)
- [formIndex(before:)](swift/array/formindex(before:).md)
- [index(_:offsetBy:)](swift/array/index(_:offsetby:).md)
- [index(_:offsetBy:limitedBy:)](swift/array/index(_:offsetby:limitedby:).md)
- [formIndex(_:offsetBy:limitedBy:)](swift/array/formindex(_:offsetby:limitedby:).md)
- [distance(from:to:)](swift/array/distance(from:to:).md)
