文書 > Swift > Dictionary > Order Dependent Operations on Dictionary > distance(from:to:)
インスタンスメソッド
distance(from:to:)
2 つのインデックス間の距離を返します。
宣言
パラメータ
start | コレクションの有効なインデックス。 |
end | コレクションの別の有効なインデックス。end が start と等しい場合、結果はゼロです。 |
戻り値
start と end の間の距離。コレクションが BidirectionalCollection プロトコルに準拠している場合にのみ、結果が負になる可能性があります。
議論
コレクションが BidirectionalCollection プロトコルに準拠していない限り、start は end 以下でなければなりません。
複雑さ:コレクションが RandomAccessCollection に準拠している場合は O(1)。それ以外の場合、O(k)、ここで k は結果の距離です。
以下も見よ
インデックスの操作
var startIndex: Dictionary<Key, Value>.Index
空でない辞書の最初の要素の位置。
var endIndex: Dictionary<Key, Value>.Index
辞書の "最後を過ぎた" 位置、つまり、最後の有効なサブスクリプト引数よりも 1 つ大きい位置。
func index(after: Dictionary<Key, Value>.Index) -> Dictionary<Key, Value>.Index
与えられたインデックスの直後の位置を返します。
func formIndex(after: inout Dictionary<Key, Value>.Index)
与えられたインデックスをその後継者で置き換えます。
func index(Index, offsetBy: Int) -> Index
与えられたインデックスから指定された距離にあるインデックスを返します。
func formIndex(inout Index, offsetBy: Int)
与えられたインデックスを指定した距離だけオフセットします。
func index(Index, offsetBy: Int, limitedBy: Index) -> Index?
与えられた制限インデックスをその距離が超えない限り、与えられたインデックスから指定された距離にあるインデックスを返します。
func formIndex(inout Index, offsetBy: Int, limitedBy: Index) -> Bool
与えられたインデックスを指定された距離だけオフセットするか、それが与えられた制限インデックスと等しくなります。
var indices: DefaultIndices<Dictionary<Key, Value>>
昇順でのコレクションのサブスクリプト付けに有効なインデックス。