我有Dictionary<int,List<string>>
。
我有多个KeyValuePairs所以在第一个KeyValuePair中,List可能有10个项目,第二个KeyValuePair可能有100个等。
我需要计算每个列表中所有项目的总计数,所以在上面的示例中,我的结果为110.
答案 0 :(得分:12)
这很简单:
int sum = dictionary.Sum(x => x.Value.Count);
答案 1 :(得分:0)
您可以实现一个循环遍历字典的count方法,并添加内部列表的计数。
更好的方法是创建一个专门的集合并在内部维护这个数据结构。您可以覆盖该类中的count方法以返回计数。然后,您可以通过保留类级别计数器进行优化,并在添加和删除项目时更新它。
答案 2 :(得分:0)
这会返回您的总数:
int sum = dictionary.Values.Sum(x => x.Count);