Har*_*iya -6 c# linq arrays dictionary
我有一个字典,键是整数类型,值是字符串类型
核心价值
1 - “A”
2 - “乙”
3 - "c"
4 - “D”
5 - “E”
我有一个字符串类型的数组
{"A","D","E"}
现在我想匹配字典和数组以使用字典键生成以下输出
1:真 4:真 5:真
在上面的输出中,整数表示字典键值“A”在数组中匹配,即:- 1=true
我会join用来查找匹配项:
Dictionary<int, string> dict = new Dictionary<int, string>
{
{1, "A"},
{2, "B"},
{3, "c"},
{4, "D"},
{5, "E"},
};
string[] values = new [] {"A","D","E"};
var query =
from kvp in dict
join s in values on kvp.Value equals s
select new {kvp.Key, Found = true};
Run Code Online (Sandbox Code Playgroud)
您也可以使用where values.Contains(kvp.Value)而不是连接,但每次都会搜索数组,而连接将创建查找,这将更有效地搜索。对于您发布的数据的大小,可能不会有太大的性能提升,但对于大型集合,它可能会更快。
| 归档时间: |
|
| 查看次数: |
2154 次 |
| 最近记录: |