Returns a subsequence from the start of the collection through the specified position.
SDK
- Xcode 11.0+
Framework
- Swift Standard Library
Declaration
func prefix(through position: CollectionDifference <ChangeElement>.Index) -> Slice<CollectionDifference <ChangeElement>>
Parameters
end
The index of the last element to include in the resulting subsequence.
end
must be a valid index of the collection that is not equal to theend
property.Index
Return Value
A subsequence up to, and including, the end
position.
Discussion
The resulting subsequence includes the element at the position end
. The following example searches for the index of the number 40
in an array of integers, and then prints the prefix of the array up to, and including, that index:
let numbers = [10, 20, 30, 40, 50, 60]
if let i = numbers.firstIndex(of: 40) {
print(numbers.prefix(through: i))
}
// Prints "[10, 20, 30, 40]"
Using the prefix(through:)
method is equivalent to using a partial closed range as the collection’s subscript. The subscript notation is preferred over prefix(through:)
.
if let i = numbers.firstIndex(of: 40) {
print(numbers[...i])
}
// Prints "[10, 20, 30, 40]"
Complexity: O(1)