【发布时间】:2011-07-18 10:16:49
【问题描述】:
我有一个
Dim carsDic as Dictionary(Of String, Integer)
Dictionary<string, int> carsDic;
这是汽车代码列表(字符串)及其时间(整数,以分钟为单位);
我想按时间排序汽车,然后按代码,并返回较松的(时间较高,代码较高)。
我该如何使用 LINQ 呢? (VB.NET!!,C#?!)
【问题讨论】:
我有一个
Dim carsDic as Dictionary(Of String, Integer)
Dictionary<string, int> carsDic;
这是汽车代码列表(字符串)及其时间(整数,以分钟为单位);
我想按时间排序汽车,然后按代码,并返回较松的(时间较高,代码较高)。
我该如何使用 LINQ 呢? (VB.NET!!,C#?!)
【问题讨论】:
var loser = carsDic.OrderByDescending(x => x.Value)
.ThenByDescending(x => x.Key).First();
【讨论】:
carsDic.OrderBy(cd => cd.Value).ThenBy(cd => cd.Key).Last()
【讨论】:
var deadLastCar = carsDic.OrderByDescending(e => e.Value).ThenByDescending (e => e.Key).First();
【讨论】:
由于这是作业,我不会提供现成的答案。
最简单(最直接)的方法是将所有信息放入List<Something>,其中Something 是一个具有Code 和Time 属性的类。它可以是匿名类型(想想select new { Code = "X", Time = 0 })、元组或您自己的类。
然后您可以尝试根据您的要求对List 进行排序。
尝试弄清楚上述可能如何实施,如果您在此过程中需要更具体的帮助,请编辑问题。
【讨论】: