我有一个包含如下名称的字符串数组:
[Alex, Alex, Michael, Michael, Dave, Victor]
Run Code Online (Sandbox Code Playgroud)
我转换为 List<string>
然后我需要编写一个函数来返回列表中的最大重复项,但是应该按降序排序,在这种情况下,迈克尔.
我已按照此链接中所述的LINQ代码进行操作.这是:
string maxRepeated = prod.GroupBy(s => s)
.OrderByDescending(s => s.Count())
.First().Key;
Run Code Online (Sandbox Code Playgroud)
但是,代码返回Alex而不是Michael.
我试图添加另一个,OrderByDescending但它返回Victor.
string maxRepeated = prod.GroupBy(s => s)
.OrderByDescending(s => s.Count())
.OrderByDescending(b => b)
.First().Key;
Run Code Online (Sandbox Code Playgroud)
我被卡住了,不知道需要添加什么才能达到预期的效果.
任何帮助表示赞赏.
不是OrderByDescending忽略先前订单的第二个但是ThenByDescending:
string maxRepeated = prod.GroupBy(s => s)
.OrderByDescending(g => g.Count())
.ThenByDescending(g => g.Key)
.First().Key;
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
81 次 |
| 最近记录: |