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