int[] A = new[] { 1, 2, 3, 4, 5 };
int[] B = new[] { 2, 4, 9, 10 };
//交集
int[] C = A.Intersect(B).ToArray();
//差集
int [] D=A.Except(B)).ToArray();
//并集
int [] E =A.Union(B).).ToArray();
例子:
int[] id1 = { 44, 26, 92, 30, 71, 38 }; int[] id2 = { 39, 59, 83, 47, 26, 4, 30 }; IEnumerable<int> both = id1.Intersect(id2); foreach (int id in both) Console.WriteLine(id); /* This code produces the following output: 26 30 */
Product[] fruits1 = { new Product { Name = "apple", Code = 9 }, new Product { Name = "orange", Code = 4 }, new Product { Name = "lemon", Code = 12 } }; Product[] fruits2 = { new Product { Name = "apple", Code = 9 } }; //Get all the elements from the first array //except for the elements from the second array. IEnumerable<Product> except = fruits1.Except(fruits2, new ProductComparer()); foreach (var product in except) Console.WriteLine(product.Name + " " + product.Code); /* This code produces the following output: orange 4 lemon 12 */
int[] ints1 = { 5, 3, 9, 7, 5, 9, 3, 7 }; int[] ints2 = { 8, 3, 6, 4, 4, 9, 1, 0 }; IEnumerable<int> union = ints1.Union(ints2); foreach (int num in union) { Console.Write("{0} ", num); } /* This code produces the following output: 5 3 9 7 8 6 4 1 0 */