3つ目は、拡張メソッドであるOrderByDescendingメソッドを使う方法です。 既に解説したOrderByメソッドは配列・コレクションを昇順にソートするものでしたが、OrderByDescendingメソッドは降順にソートするものです。
OrderByDescendingメソッドを使って配列を降順にソートする
using System;
using System.Linq;
class Sample {
static void Main()
{
// ソート対象の配列
var arr = new int[] {5, 2, 3, 1, 4};
// 降順にソートして表示
foreach (var val in arr.OrderByDescending(val => val)) {
Console.Write("{0}, ", val);
}
Console.WriteLine();
}
}
実行結果
5, 4, 3, 2, 1,
降順にソートされる点を除けばOrderByDescendingメソッドはOrderByメソッドと同じなので、引数や動作について詳しくはOrderByメソッドについての解説を参照してください。