假设我有两个变量,它们都是
Dictionary<int, int>
.
Dictionary<int, int> d1 = new Dictionary<int, int> { ... };
Dictionary<int, int> d2 = new Dictionary<int, int> { ... };
这两本词典可能包含相同的键。
我想把它们组合成一个
Dictionary<int, int> combinedDictionary
.
做这件事的优雅方法是什么?
我试过以下方法:
var combinedDictionary = d1.Concat(d2.Where(x => !d1.Keys.Contains(x.Key)));
但不幸的是,当试图返回这个组合变量时,我得到了以下错误:
无法将表达式类型“system.collections.generic.IEnumerable>”转换为返回类型“system.collections.generic.dictionary”。
有可能像这样安全地投下去吗?
return (Dictionary<int, int>) combinedDictionary;
提前谢谢!