文書   >   Swift   >   Dictionary   >   Order Dependent Operations on Dictionary   >   lexicographicallyPrecedes(_:by:)
汎用インスタンスメソッド
lexicographicallyPrecedes(_:by:)
要素を比較するために与えられた述語 (predicate) を使用して、シーケンスが辞書の順序で別のシーケンスに先行するかどうかを示すブール値を返します。
宣言
パラメータ
other | このシーケンスと比較すべきシーケンス。 |
areEquivalent | 最初の引数を 2 番目の引数の前に並べるべき場合に true を返す述語 (predicate)。それ以外の場合は false。 |
戻り値
areInIncreasingOrder で順序付けされた辞書の順でこのシーケンスが other に先行する場合は true。それ以外の場合は false。
議論
述語 (predicate) は、要素に対し 厳密に弱い順序付け でなければなりません。つまり、任意の要素 a、b、および c について、以下の条件が満たされなければなりません。
このメソッドは、Unicode とは関係のない辞書式順序の数学的な概念を実装しています。文字列を並べ替えてエンドユーザーに提示する場合は、代わりにローカライズされた比較を実行する StringAPI を使用します。
複雑さ:O(m)。ここで、m はシーケンスの長さと other の長さのうち小さい方です。
- areEquivalent(a, a) は常に falseです。(非再帰性)
- areEquivalent(a, b) と areEquivalent(b, c) が共に true の場合、areEquivalent(a, c) もまた true です。(推移比較可能性)
- 2 つの要素がどちらも述語 (predicate) に従って他の要素より前に順序付けられていない場合、比較できません。a と b が比較できず、b と c が比較できない場合、a と c も比較できません。(推移比較不能性)
以下も見よ
辞書の比較
与えられた述語 (predicate) を同等性テストとして使用して、このシーケンスと別のシーケンスに同じ順序で同等の要素が含まれているかどうかを示すブール値を返します。
与えられた述語 (predicate) を同等性テストとして使用して、シーケンスの初期要素が別のシーケンスの要素と等しいかどうかを示すブール値を返します。