如何计算项目数量>;字典中的0<;字符串,int>;在C#/.Net中使用Linq?
嗨,我有一本字典,定义如下:如何计算项目数量>;字典中的0<;字符串,int>;在C#/.Net中使用Linq?,c#,.net,linq,C#,.net,Linq,嗨,我有一本字典,定义如下: Dictionary<string, int> sampleDictionary; 字典样本字典; 我希望能够做到以下几点: 1) 选择项大于0的值列表 我尝试过使用sampleDictionary.SelectMany()和sampleDictionary.Select(), 但我似乎不太懂语法 有人能帮我指出正确的方向吗 谢谢, JohnB您有两种方法 一种是获取字典的Values属性,然后对其执行linq操作 sampleDictionary.
Dictionary<string, int> sampleDictionary;
字典样本字典;
我希望能够做到以下几点:
1) 选择项大于0的值列表
我尝试过使用sampleDictionary.SelectMany()和sampleDictionary.Select(),
但我似乎不太懂语法
有人能帮我指出正确的方向吗
谢谢,
JohnB您有两种方法 一种是获取字典的Values属性,然后对其执行linq操作
sampleDictionary.Values.Where(...).Select(...)
另一种方法是使用每个键值对的value
属性
sampleDictionary.Where(x => x.Value > 0).Select(x => x.Value);
你有几种方法 一种是获取字典的Values属性,然后对其执行linq操作
sampleDictionary.Values.Where(...).Select(...)
另一种方法是使用每个键值对的value
属性
sampleDictionary.Where(x => x.Value > 0).Select(x => x.Value);
你总是可以用这种方法
foreach(int i in sampleDictionary.Values)
{
if(i > 0)
{
//...
}
}
你总是可以用这种方法
foreach(int i in sampleDictionary.Values)
{
if(i > 0)
{
//...
}
}
希望这有帮助
您可以使用查询语法来完成。我认为如果你不熟悉Linq,你会更容易理解
Dim sampleDictionary作为新字典(字符串、整数)
如果您想要更简短的语法,也可以使用lambda样式。希望能有所帮助
您可以使用查询语法来完成。我认为如果你不熟悉Linq,你会更容易理解
Dim sampleDictionary作为新字典(字符串、整数)
如果需要更短的语法,也可以使用lambda样式此代码将统计值大于零的项数
var result = (from x in sampleDictionary.Values where x > 0 select x).Count();
此代码将统计值大于零的项目数
var result = (from x in sampleDictionary.Values where x > 0 select x).Count();
您所说的值列表是什么意思?如果要筛选,您需要先使用
Where
。然后,您可以使用Select
选择键或值。现在我不确定您想要哪一个。如果您只想要int值,请从sampleDictionary.values
开始linq。您只需要int值,还是还需要与之关联的字符串键?请显示您的代码。谢谢,我终于找到了:sampleDictionary.Where(item=>item.Value>1)您所说的值列表是什么意思如果要筛选,您需要先使用Where
。然后,您可以使用Select
选择键或值。现在我不确定您想要哪一个。如果您只想要int值,请从sampleDictionary.values
开始linq。您只需要int值,还是还需要与之关联的字符串键?请显示您的代码。谢谢,我终于找到了它:sampleDictionary.Where(item=>item.Value>1)这个问题专门问如何使用Linq…这个问题专门问如何使用Linq。。。