方向に従ってソートされた入力 list を返し、コピーします。 方向 dir :Ascending または :Descendingする必要があります。 list [均一である必要があります。 list 内のすべての要素が適切なキー関数に指定されていない場合は数値( Integers / Numbers )( Strings )、またはアルファベットである必要があります。 エラーは、異種 list が指定されている場合、シグナルが発行されます。
2 次および 3 次の並べ替えも可能です。(キー関数の適用後に) 2 つの要素が等しい場合、それらを 2 次条件によって並べ替えるメカニズムがあります。" 並べ替え順序 " と " キー引数 Names 関数の list することができます。 最初の順序またはキーが 1 次並べ替え基準です。必要に応じて追加の条件が使用されます。
sort ( list As List, _
dir As Name, _
Optional key As Name = :Identity) As List
引数 | [タイプ] | 説明 |
---|---|---|
list | List | ソートするには list を入力します。 |
dir | Any | ソートの方向を指定し、:Ascending または :Descendingすることができます。 すべての並べ替えキーに対して、各キーに特定の並べ替え方向を定義する値の list 各並べ替えキーの 1 つとして使用される単一の値として指定することができます。 |
key | Any | デフォルトは :Identityで並べ替えに使用するキーを取得するには、リスト内の各項目に適用する関数の名前を指定します(省略可能); ; します。 Key 関数は、数値または string の値を返す必要があり、マルチ レベルのソートを実行する関数の名前を指定することができます。 list |
文字列値の逆の順序でソートされたIntent >sort({:a, :d, :r, :c, :b}, :Descending)
--> {:r, :d, :c, :b, :a}
名前値の単純なリストです。 Intent >sort({:a, :d, :r, 3.1, :b, :c}, :Ascending)
エラー: 異種
list
'キー' 関数 #1 で処理した後に()を使用します。 並べ替えに使用されるキーは同種である必要があります。
Integer 、 Number 、 String または Name キー関数 #1 を返しませんでした。 エラー :Intent >sort({{:a,:d}, {:r,:b}, {:c,:x}}, :Ascending)
項目番号または strings 以外の list をソートするには、いずれかの数を返すか、または list のすべての項目に対する string キー関数の名前を指定する必要があります。 この例では、 lists 直接エラーを発生の list 並べ替えしようとします。
この例では 、Intent >sort({{:a,:d}, {:r,:b}, {:c,:x}}, :Ascending, key := :first)
--> {{:a, :d}, {:c, :x}, {:r, :b}}
lists
キーと first 関数を使用して並べ替えられています。 これらの lists キーと second 関数を使用してソートされました。Intent >sort({{:a,:d}, {:r,:b}, {:c,:x}}, :Ascending, key := :second) --> {{:r, :b}, {:a, :d}, {:c, :x}}
この例では、 lists のIntent >sort({{4,:a,7}, {1,:c,4}, {4,:a,5}, {1,:c,3}, {1,:a,5}}, :Ascending, key := {:first, :third}) --> {{1, :c, 3}, {1, :c, 4}, {1, :a, 5}, {4, :a, 5}, {4, :a, 7}}を 2 次キーとしては、プライマリキー関数 firstthird 関数を使用して並べ替えられています。
2 次キーとして second 関数は、この例では 、Intent >sort({{4,:a,7}, {1,:c,4}, {4,:a,5}, {1,:c,3}, {1,:a,5}}, :Ascending, key := {:first, :second, :third}) --> {{1, :a, 5}, {1, :c, 3}, {1, :c, 4}, {4, :a, 5}, {4, :a, 7}}プライマリキー lists と first 関数を使用してソートされた、3 次キーとして機能します。 third 各並べ替えキーは昇順に適用されています。
この例では、 lists の Intent >sort({{4,:a,7}, {1,:c,4}, {4,:a,5}, {1,:c,3}, {1,:a,5}}, {:ascending, :descending}, key := {:first, :third}) --> {{1, :a, 5}, {1, :c, 4}, {1, :c, 3}, {4, :a, 7}, {4, :a, 5}}を 2 次キーとしては、プライマリキー関数 firstthird 関数を使用して並べ替えられていますが、並べ替え方向はそれぞれ昇順と降順で表示されます。 すべての並べ替え条件が同じ方向の場合、それを複製する必要はありません。上記の例 6 と 7 を参照してください。