首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >将多个字典合并为一个字典

将多个字典合并为一个字典
EN

Stack Overflow用户
提问于 2012-05-12 06:23:51
回答 2查看 101.5K关注 0票数 31

可能重复:

Merging dictionaries in C#

字典1

"a","1“

"b","2“

字典2

"c","3“

"d","4“

字典3

"e","5“

"f","6“

组合式词典

"a","1“

"b","2“

"c","3“

"d","4“

"e","5“

"f","6"

如何将上述3个字典组合成一个组合字典?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-05-12 06:31:24

代码语言:javascript
复制
var d1 = new Dictionary<string, int>();
var d2 = new Dictionary<string, int>();
var d3 = new Dictionary<string, int>();

var result = d1.Union(d2).Union(d3).ToDictionary (k => k.Key, v => v.Value);

编辑

要确保不使用重复的密钥,请使用:

代码语言:javascript
复制
var result = d1.Concat(d2).Concat(d3).GroupBy(d => d.Key)
             .ToDictionary (d => d.Key, d => d.First().Value);
票数 146
EN

Stack Overflow用户

发布于 2012-05-12 06:27:52

只需遍历它们:

代码语言:javascript
复制
var result = new Dictionary<string, string>();

foreach (var dict in dictionariesToCombine) {
    foreach (var item in dict) {
        result.Add(item.Key, item.Value);
    }
}

(假设dictionariesToCombine是要组合的字典的某个IEnumerable,比方说是一个数组。)

票数 13
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10559367

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档