Required Instance Subscriptswift 6.0.1Swift
subscript(_:)
Accesses a contiguous subrange of the collection’s elements.
override subscript(bounds: Range<Self.Index>) -> Self.SubSequence { get set }
Parameters
- bounds
A range of the collection’s indices. The bounds of the range must be valid indices of the collection.
The accessed slice uses the same indices for the same elements as the original collection. Always use the slice’s startIndex
property instead of assuming that its indices start at a particular value.
This example demonstrates getting a slice of an array of strings, finding the index of one of the strings in the slice, and then using that index in the original array.
var streets = ["Adams", "Bryant", "Channing", "Douglas", "Evarts"]
let streetsSlice = streets[2 ..< streets.endIndex]
print(streetsSlice)
// Prints "["Channing", "Douglas", "Evarts"]"
let index = streetsSlice.firstIndex(of: "Evarts") // 4
streets[index!] = "Eustace"
print(streets[index!])
// Prints "Eustace"
Restates
subscript(Range<Self.Index>
) -> Self.SubSequence Accesses a contiguous subrange of the collection’s elements.
Other requirements
Type members
Instance members
subscript(Self.Index
) -> Self.Element Accesses the element at the specified position.
func partition(by: (Self.Element) throws -> Bool
) rethrows -> Self.Index Reorders the elements of the collection such that all the elements that match the given predicate are after all the elements that don’t match.
func swapAt(Self.Index, Self.Index
) Exchanges the values at the specified indices of the collection.
func withContiguousMutableStorageIfAvailable<R>((inout UnsafeMutableBufferPointer<Self.Element>) throws -> R
) rethrows -> R? Executes a closure on the collection’s contiguous storage.
Citizens in Swift
Default implementations
subscript<R>(R
) -> Self.SubSequence subscript((UnboundedRange_) -> ()
) -> Self.SubSequence subscript(Range<Self.Index>
) -> Slice<Self> Accesses a contiguous subrange of the collection’s elements.