gpt4 book ai didi

c# - 对 Dictionary 类型的 Linq 查询

转载 作者:行者123 更新时间:2023-11-30 19:07:44 25 4
gpt4 key购买 nike

我有一个 Dictionary<int, double> 类型的字典并希望消除等于某个值的值。

目前我有

Dictionary <int, double> dict = GetDictionary();
dict = dict.Where(x => x.Value != 100).Select(x => x);

我得到了错误:

无法隐式转换类型“System.Collections.Generic.IEnumerable<System.Collections.Generic.KeyValuePair<int,double>>” ' 到 ' System.Collections.Generic.Dictionary<int,double> '.存在显式转换(是否缺少强制转换?)

如何使用 Linq 实现我想做的事情?

最佳答案

使用 LINQ:

var newDict = dict.Where(kvp => kvp.Value != 100)
.ToDictionary(kvp => kvp.Key, kvp => kvp.Value);

出现编译错误的原因是 Select 是 IEnumerable 的扩展。在 Dictionary<TKey,TValue> 的情况下你正在处理一个 IEnumerable<KeyValuePair<TKey,TValue>>

关于c# - 对 Dictionary<int, double> 类型的 Linq 查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3792295/

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