Subscript

subscript(_:)

Accesses a contiguous subrange of the array’s elements. 配列のもつ要素らの中のある連続した下位範囲にアクセスします。

Declaration 宣言

subscript(bounds: Range<Int>) -> ArraySlice<Element> { get set }

Parameters パラメータ

bounds

A range of integers. The bounds of the range must be valid indices of the array. 整数からなる範囲。範囲の境界は、配列の有効なインデックスでなければなりません。

Discussion 解説

The returned ArraySlice instance uses the same indices for the same elements as the original array. In particular, that slice, unlike an array, may have a nonzero startIndex and an endIndex that is not equal to count. Always use the slice’s startIndex and endIndex properties instead of assuming that its indices start or end at a particular value. 返されたArraySliceインスタンスは、同じ要素に対して元のコレクションと同じインデックスを使います。特に、そのスライスは、配列と違い、非ゼロのstartIndexcountに等しくないendIndexを持つかもしれません。常にスライスのstartIndexendIndexプロパティを使ってください、それのインデックスが特定の値で始まると決めてかかるのではなく。

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. この例は文字列からなる配列のあるスライスの取得を実演します、スライスの中の文字列の1つのインデックスを見つけて、それからそのインデックスを元の配列において使います。


let streets = ["Adams", "Bryant", "Channing", "Douglas", "Evarts"]
let streetsSlice = streets[2 ..< streets.endIndex]
print(streetsSlice)
// Prints "["Channing", "Douglas", "Evarts"]"


let i = streetsSlice.firstIndex(of: "Evarts")    // 4
print(streets[i!])
// Prints "Evarts"