2

我有两个Dictionary<Person,Boolean>。dict a 包含:

Person A -> false
Person B -> true,
Person C -> false;

字典 b 包含:

Person A -> true;
Person D -> false;

如果一个人在两个列表之一中包含一个真值,我想要一个结果,它包含一次所有的人,并将布尔值设置为真。

我该如何解决这个问题dict.Union()

谢谢库奇

4

1 回答 1

4

听起来你可以使用:

var result = first.Union(second)
                  .GroupBy(x => x.Key)                // Group by dictionary keys
                  .ToDictionary(g => g.Key,           // Key for new dictionary
                                g => g.Any(p => p.Value)); // Any true values?
于 2012-10-08T12:17:36.203 回答