在C#中合并和更新两个列表
发布时间:2020-12-15 18:20:38 所属栏目:百科 来源:网络整理
导读:我有两个List T对象: 例如: 清单1: ID,填充Id的值,值为空,包含1到10的ID. 1,“” 2,“” … 10,“” 清单2: ID,值和其他属性都填充了值,但此列表在ID方面是List 1的子集. (例如只有3项) 2,67 4,90 5,98 我想要的是合并列表1,但具有更新的值.有没有人有任
我有两个List< T>对象:
例如: 清单1: 清单2: 我想要的是合并列表1,但具有更新的值.有没有人有任何好的扩展方法可以执行此操作或执行此操作的任何elegent代码.最终的清单应该是: ID,价值 解决方法
我可能会使用字典而不是列表:
// sample data var original = new Dictionary<int,int?>(); for (int i = 1; i <= 10; i++) { original.Add(i,null); } var updated = new Dictionary<int,int>(); updated.Add(2,67); updated.Add(4,90); updated.Add(5,98); updated.Add(11,20); // add // merge foreach (var pair in updated) { original[pair.Key] = pair.Value; } // show results foreach (var pair in original.OrderBy(x => x.Key)) { Console.WriteLine(pair.Key + ": " + pair.Value); } 如果你在谈论一个对象的属性,它会更棘手,但仍然可行. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |