gpt4 book ai didi

c# - 计算通用列表中存在的字典中值的总和

转载 作者:行者123 更新时间:2023-11-30 13:12:49 25 4
gpt4 key购买 nike

我对 LINQ 不是特别精通,所以我可以在这个特定场景中使用一些帮助。

我有一个字典项目列表。我需要对字符串列表中存在键的字典中的值求和。

我该如何为这样的事情编写 LINQ 表达式?

Dictionary<string, decimal> cars = new Dictionary<string, decimal>();

cars.Add("Ford", 1.2M);
cars.Add("Chevy", 2M);
cars.Add("Toyota", 3M);
cars.Add("Audi", 5M);

List<string> selectedList = new List<string>();
selectedList.Add("Chevy");
selectedList.Add("Audi");

最佳答案

就是这样:

var sum = selectedList.Sum(s=>cars[s]);

或者如果您不确定,所有值都在字典中(感谢 Tim Schmelter 的更正):

var sum = selectedList.Sum(s=>cars.ContainsKey(s)?cars[s]:0);

编辑:更好的是 Tim 提出的解决方案:

selectedList.Where(cars.ContainsKey).Sum(s => cars[s])

关于c# - 计算通用列表中存在的字典中值的总和,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42229272/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com