如何比较字典中的列表值

时间:2015-10-26 06:44:13

标签: c# dictionary compare

如何比较Dictionary<String, List<String>>字典中的值?

如果字典中的所有值都相同,那么就做一些事情。 否则什么都不做。

由于

1 个答案:

答案 0 :(得分:1)

如果要比较Dictionary的键,则:

var dict1 = new Dictionary<string, List<string>>();
var dict2 = new Dictionary<string, List<string>>();
// something..
if (dict1.Keys.SequenceEqual(dict2.Keys)) 
{
  // your code
}

如果要比较Dictionary的值,则:

var dict1 = new Dictionary<string, List<string>>();
var dict2 = new Dictionary<string, List<string>>();
// something..
var d1Keys = dict1.Keys.ToList();
var result = d1Keys
    .All(key => dict2.ContainsKey(key) && dict1[key].SequenceEqual(dict2[key]));
// result == true, if equals