インスタンスメソッド
lexicographicallyPrecedes(_:by:)
与えられた述語を使用して要素を比較し、シーケンスが辞書 (dictionary) 順で別のシーケンスに先行するかどうかを示すブール値を返します。
System Swift
iOS 14.0+ iPadOS 14.0+ Mac Catalyst 14.0+
macOS 11.0+ tvOS 14.0+
visionOS 1.0+ watchOS 7.0+
func lexicographicallyPrecedes<OtherSequence>(
_ other: OtherSequence,
) rethrows -> Bool where OtherSequence : Sequence, Self.Element == OtherSequence.Element
パラメータ
other
このシーケンスと比較すべきシーケンス。
areInIncreasingOrder
最初の引数を 2 番目の引数の前に並べる必要がある場合は true を返し、それ以外の場合は false を返す述語。
戻り値
このシーケンスが、areInIncreasingOrder に従って順序付けられた辞書内で other のシーケンスより前にある場合は true、それ以外の場合は false。
議論
述語は、要素に対して 厳密に弱い順序付け でなければなりません。つまり、任意の要素 a、b、c について、以下の条件が満たされていなければなりません。
areInIncreasingOrder(a, a) は常に false です。(非再帰性 )
areInIncreasingOrder(a, b) と areInIncreasingOrder(b, c) が両方とも true である場合、areInIncreasingOrder(a, c) も true です。(推移的比較可能性)
述語に従って、どちらの要素も他方より前に順序付けられていない場合、2 つの要素は 比較不可能 です。a と b が比較不可能で、b と c が比較不可能である場合、a と c も比較不可能です。(推移的比較不可能)
注意
このメソッドは、Unicode とは関係のない辞書式順序付けという数学的概念を実装します。エンドユーザに提示するために文字列を並べ替える場合は、代わりにローカライズされた比較を実行する String API を使用してください。
複雑さ:
O(m)、ここで、m はシーケンスの長さと oher の長さの小さい方です。
トップへ
トップへ
トップへ
トップへ
トップへ
トップへ
トップへ
トップへ
トップへ
トップへ
トップへ
トップへ
トップへ
トップへ
トップへ
トップへ
トップへ