配列をソートするには、Array.Sortメソッドを使います。 このメソッドは静的メソッドで、引数に指定された配列をソートします。
Array.Sortで文字列の配列をソートする
using System;
class Sample {
static void Main()
{
// ソート対象の配列
var arr = new string[] {"ab", "abc", "aa", "a", "b", "acb"};
// ソート
Array.Sort(arr);
// ソート結果を表示
foreach (var val in arr) {
Console.Write("{0}, ", val);
}
Console.WriteLine();
}
}
実行結果
a, aa, ab, abc, acb, b,
Array.Sortメソッドでは、引数に指定された配列自体をソートします(破壊的変更)。 ソートされた配列が新たに作成され戻り値として返されることはありません。 そのため、ソート前の状態も維持しておきたい場合は、Array.Cloneメソッドなどを使ってあらかじめ配列の複製を作っておき、その後で変更用の配列をソートする必要があります。
非破壊的なソートを行いたい場合はEnumerable.OrderByメソッドを使うことができます。
特に順序を指定しない限り、Array.Sortメソッドはデフォルトのソート順でソートします。 デフォルトのソート順については基本型とデフォルトのソート順、ソート順の定義については大小関係の定義と比較で解説しています。 逆順でのソートについては§.降順でのソートで後述しています。
ジャグ配列・多次元配列のソートについてはジャグ配列・多次元配列のソートで解説します。