我有一本字典:
public static void Main(string[] args)
{
Dictionary<string, int[]> ret = new Dictionary<string, int[]>();
int[] a = {1,0,3,4,0};
int[] b = { 3, 0, 9, 10, 0};
int[] c = {2,3,3,5,0};
ret.Add("Jack", a);
ret.Add("Jane", b);
ret.Add("James", c);
int total = ret["Jack"].Length;
Console.WriteLine(total);
}
找到我使用的最长的长度:
int total = ret["Jack"].Length;
有没有办法在不引用特定密钥的情况下找到最长的长度?
答案 0 :(得分:3)
你必须遍历字典中的每个键/值对,检查值的长度,并记住最大值。
幸运的是,有一个名为Max
的LINQ扩展程序将为您完成:
int total = ret.Max(t => t.Value.Length);
答案 1 :(得分:0)
int longestVal = -1;
if(ret.Any())
{
longestVal = ret.Values.Max(x => x.Length);
}