文書   >   Swift   >   Swift 標準ライブラリ   >   Collections   >   Range   >   formIndex(_:offsetBy:)
インスタンスメソッド
formIndex(_:offsetBy:)
与えられたインデックスを指定された距離だけオフセットします。
宣言
func formIndex(_ i: inout Bound, offsetBy distance: Int)
パラメータ
i | コレクションの有効なインデックス。 |
distance | offset i までの距離。コレクションが BidirectionalCollection プロトコルに準拠していない場合、distance は負であってはなりません。 |
議論
distance として渡された値は、コレクションの境界を超えて i をオフセットしてはなりません。
コレクションが RandomAccessCollection に準拠している場合 O(1)。そうでなければ、O(k) 、ここで k は distance の絶対値です。
以下も見よ
インデックスの操作
Bound が Strideable に準拠し、Bound.Stride が SignedInteger に準拠する場合に使用可能です。
Bound が Strideable に準拠し、Bound.Stride が SignedInteger に準拠する場合に使用可能です。
昇順でコレクションをサブスクライブするのに有効なインデックス。
Index が Strideable に準拠し、Indices が Range<Self.Index> であり、および Index.Stride が Int の場合に使用可能です。
範囲をサブスクリプトするために有効なインデックス。昇順に並べられます。
Bound が Strideable に準拠し、Bound.Stride が SignedInteger に準拠する場合に使用可能です。
func index(after: Range<Bound>.Index) -> Range<Bound>.Index
Bound が Strideable に準拠し、Bound.Stride が SignedInteger に準拠する場合に使用可能です。
func formIndex(after: inout Bound)
与えられたインデックスをその後継と置き換えます。
func index(before: Range<Bound>.Index) -> Range<Bound>.Index
Bound が Strideable に準拠し、Bound.Stride が SignedInteger に準拠する場合に使用可能です。
func formIndex(before: inout Bound)
与えられたインデックスをその先祖と置き換えます。
func index(Bound, offsetBy: Int, limitedBy: Bound) -> Bound?
与えられたインデックスから指定された距離にあるインデックスを、その距離が与えられた制限インデックスを超えていない限り返します。
func index(Range<Bound>.Index, offsetBy: Int) -> Range<Bound>.Index
Bound が Strideable に準拠し、Bound.Stride が SignedInteger に準拠する場合に使用可能です。
func formIndex(inout Bound, offsetBy: Int, limitedBy: Bound) -> Bool
与えられたインデックスを指定された距離だけオフセットするか、または与えられた制限インデックスと等しくなるようにオフセットします。
func distance(from: Range<Bound>.Index, to: Range<Bound>.Index) -> Int
Bound が Strideable に準拠し、Bound.Stride が SignedInteger に準拠する場合に使用可能です。
与えられたハッシャーにそれらを供給することによって、この値の必須コンポーネントをハッシュします。
Bound が Hashable に準拠する時使用可能です。