假设我有一个列表:
IList<int> originalList = new List<int>();
originalList.add(1);
originalList.add(5);
originalList.add(10);
还有一个清单...
IList<int> newList = new List<int>();
newList.add(1);
newList.add(5);
newList.add(7);
newList.add(11);
如何更新 originalList 以便:
- 如果 int 出现在 newList 中,保持
- 如果 int 没有出现在 newList 中,删除
- 将 newList 中的任何整数添加到 originalList 中尚不存在
因此 - 制作 originalList 的内容:
{ 1, 5, 7, 11 }
我问的原因是因为我有一个带有一组孩子的对象。当用户更新这个集合时,而不是仅仅删除所有孩子,然后插入他们的选择,我认为如果我只对添加或删除的孩子采取行动,而不是拆除整个集合,然后插入newList children 就好像他们都是新的一样。
编辑-对不起-我写了一个可怕的标题...我应该写“最少的代码”而不是“高效”。我认为这抛弃了我得到的很多答案。他们都很棒……谢谢!