拥有:
IEnumerable<int> oldValues; // Example: [1, 2, 3, 4]
IEnumerable<int> newValues; // Example: [3, 4, 5, 6]
需要:
IEnumerable<int> removedValues; // Example: [1, 2]
IEnumerable<int> addedValues; // Example: [5, 6]
有什么好的 LINQ 解决方案的想法吗?
您需要Enumerable.Except - 此方法返回第一个序列中未出现在第二个序列中的那些元素。
IEnumerable<int> removedValued = oldValues.Except(newValues);
IEnumerable<int> addedValues = newValues.Except(oldValues);