c# – 我可以比较两个字典的键吗?

使用C#,我想比较两个词典是具体的,两个词典具有相同的键但不相同的值,我发现一个方法比较,但我不太确定如何使用它?有没有一种方法,除了迭代每个键?
Dictionary
[
    {key : value}
]

Dictionary1
[
    {key : value2}
]

解决方法

如果所有你想要做的是看到键是不同的,但不知道它们是什么,你可以使用SequenceEqual扩展方法对每个字典的Keys属性
Dictionary<string,string> dictionary1;
Dictionary<string,string> dictionary2;
var same = dictionary1.Count == dictionary2.Count && dictionary1.Keys.SequenceEqual(dictionary2.Keys);

如果你想要实际的差异,就像这样:

var keysDictionary1HasThat2DoesNot = dictionary1.Keys.Except(dictionary2.Keys);
var keysDictionary2HasThat1DoesNot = dictionary2.Keys.Except(dictionary1.Keys);

相关文章

在要实现单例模式的类当中添加如下代码:实例化的时候:frmC...
1、如果制作圆角窗体,窗体先继承DOTNETBAR的:public parti...
根据网上资料,自己很粗略的实现了一个winform搜索提示,但是...
近期在做DSOFramer这个控件,打算自己弄一个自定义控件来封装...
今天玩了一把WMI,查询了一下电脑的硬件信息,感觉很多代码都...
最近在研究WinWordControl这个控件,因为上级要求在系统里,...