mic*_*524 6 c# linq merge functional-programming
如何使以下方法更具功能性 - linq-style?
public static Dictionary<T, T> MergeDict<T, T>(Dictionary<T, T> a, Dictionary<T, T> b)
{
var e = new Dictionary<T, T>();
a.Concat(b).ToList().ForEach(pair =>
{
e[pair.Key] = pair.Value;
});
return e;
}
Run Code Online (Sandbox Code Playgroud)
Amy*_*y B 11
要继续您的重复丢弃方式,只需分组并获取组中的获胜项目(例如最后一项).
first.Concat(second)
.GroupBy(kvp => kvp.Key, kvp => kvp.Value)
.ToDictionary(g => g.Key, g => g.Last());
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
10773 次 |
| 最近记录: |