3
我有以下var result = new List<Tuple<int, List<ProductionReportEntry>, int>>();
如何排序以下列表
我怎樣才能通過的最後一個整數排序呢,那結果將是前高後低。
感謝您的幫助。
我有以下var result = new List<Tuple<int, List<ProductionReportEntry>, int>>();
如何排序以下列表
我怎樣才能通過的最後一個整數排序呢,那結果將是前高後低。
感謝您的幫助。
最簡單的方法是使用LINQ的OrderByDescending()
擴展方法,它會從高分到低分進行降序排列你的清單,將其推回列表:
result = result.OrderByDescending(t => t.Item3).ToList();
這是假設你想將它存回詮釋原有的參考,當然你可以把它分配給另一個變量,等等
或者,你可以做一個就地排序使用List.Sort()
的重載需要Comparisson<T>
代表:
// does descending since we put r on the lhs and l on the rhs...
result.Sort((l, r) => r.Item3.CompareTo(l.Item3));
或者,你可以建立一個自定義IComparer<T>
,當然你Tuple<int, List<PropertyReportEntry>, int>
但得到相當難看......
也許這是否行得通呢? http://msdn.microsoft.com/en-us/library/b0axc2h2.aspx – Matthew 2012-03-21 17:13:50