如何 copy/transfer 键和值从 1 个字典到另一个新的 dictionary/list?
How to copy/transfer key and values from 1 dictionary to another new dictionary/list?
我是键值操作的初学者。
我目前有 2 dictionaries.First 个带有原始键和值的字典。
var firstDict = new Dictionary<string, int>();
- 键:一个,值:1
- 键:b,值:2
- 键:c,值:1
- 键:d,值:3
- 键:e,值:5
- 键:f,值:1
- 键:g,值:4
- 键:h,值:2
- 键:我,值:1
- 键:j,值:2
下面是我的第二本词典。
Dictionary<int, string> secondDict = firstDict
.GroupBy(k => k.Value)
.ToDictionary(g => g.Key, g => string.Join(",", g.Select(k => k.Key)));
这是第二本词典打印的内容。
- 键1:值:a,c,f,i
- key 2 : 值 : b,h,j ...
所以我现在要做的是将每个键值与秒分开dictionary 并创建动态 dictionaries/lists 来存储它们,如果它们满足某些条件 if(kv.Value > 3){store in new Dictionary}
Key_1_Dict
a,c,f,i
Key_2_Dict
b,h,j
Key_3_Dict ......
请问有什么办法吗?
如果我理解了你的意思,你可以使用Where过滤数据:
Dictionary<int, string> secondDict = firstDict.Where(x => x.Value > 3)
.GroupBy(k => k.Value)
.ToDictionary(g => g.Key, g => string.Join(",", g.Select(k => k.Key)));
更新
对于第三本词典:
Dictionary<int, string> thirdDict = secondDict
.Where(x => x.Value.Split(',').Length > 2 && x.Value.Split(',').Length <= 4)
.ToDictionary(g => g.Key, g => g.Value);
我是键值操作的初学者。 我目前有 2 dictionaries.First 个带有原始键和值的字典。
var firstDict = new Dictionary<string, int>();
- 键:一个,值:1
- 键:b,值:2
- 键:c,值:1
- 键:d,值:3
- 键:e,值:5
- 键:f,值:1
- 键:g,值:4
- 键:h,值:2
- 键:我,值:1
- 键:j,值:2
下面是我的第二本词典。
Dictionary<int, string> secondDict = firstDict
.GroupBy(k => k.Value)
.ToDictionary(g => g.Key, g => string.Join(",", g.Select(k => k.Key)));
这是第二本词典打印的内容。
- 键1:值:a,c,f,i
- key 2 : 值 : b,h,j ...
所以我现在要做的是将每个键值与秒分开dictionary 并创建动态 dictionaries/lists 来存储它们,如果它们满足某些条件 if(kv.Value > 3){store in new Dictionary}
Key_1_Dict
a,c,f,i
Key_2_Dict
b,h,j
Key_3_Dict ......
请问有什么办法吗?
如果我理解了你的意思,你可以使用Where过滤数据:
Dictionary<int, string> secondDict = firstDict.Where(x => x.Value > 3)
.GroupBy(k => k.Value)
.ToDictionary(g => g.Key, g => string.Join(",", g.Select(k => k.Key)));
更新
对于第三本词典:
Dictionary<int, string> thirdDict = secondDict
.Where(x => x.Value.Split(',').Length > 2 && x.Value.Split(',').Length <= 4)
.ToDictionary(g => g.Key, g => g.Value);