- リストのソート:
Elixirでは、
Enum.sort/1
関数を使用してリストをソートすることができます。以下は、数値のリストを昇順でソートする例です。
list = [5, 2, 8, 1, 9]
sorted_list = Enum.sort(list)
IO.inspect(sorted_list)
出力:
[1, 2, 5, 8, 9]
- カスタムのソート順序:
ソート順序をカスタマイズする場合、
Enum.sort/2
関数を使用します。以下の例では、文字列の長さに基づいてリストをソートしています。
list = ["apple", "banana", "kiwi", "orange"]
sorted_list = Enum.sort(list, fn a, b -> String.length(a) <= String.length(b) end)
IO.inspect(sorted_list)
出力:
["kiwi", "apple", "banana", "orange"]
- キーによるソート:
キーに基づいてソートする場合、
Enum.sort_by/3
関数を使用します。以下の例では、タプルの2番目の要素に基づいてリストをソートしています。
list = [{1, "apple"}, {3, "banana"}, {2, "kiwi"}]
sorted_list = Enum.sort_by(list, fn {key, _value} -> key end)
IO.inspect(sorted_list)
出力:
[{1, "apple"}, {2, "kiwi"}, {3, "banana"}]
これらは、Elixirでの基本的なソート方法とコード例の一部です。他にもさまざまなソート関数やオプションがありますので、公式のドキュメントや他のリソースを参考にすることをおすすめします。