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