首页 > 代码库 > C# 比较二个数组并找出相同或不同元素的方法

C# 比较二个数组并找出相同或不同元素的方法

string[] arr1 = new[] { "1", "2", "3", "4", "5" };
string[] arr2 = new[] { "1", "3", "5" };
 
//找出相同元素(即交集)
var sameArr = arr1.Intersect(arr2).ToArray();
//找出不同的元素(即交集的补集)
var diffArr = arr1.Where(c => !arr2.Contains(c)).ToArray();

 

找出相同元素还可以使用List<T>的特性使用去重功能

 

List<int> ss = new List<int>();
            ss.Add(1);
            ss.Add(1);
            ss.Add(2);
List<int> ss2 = new List<int>();
            ss2.Add(2);
            ss2.Add(3);
            ss2.Add(3);
List<int> ss3 = ss.AddRange(ss2);//合并两个数组
            List<int> ssRes= ss3.Distinct().ToList();
            //ssRes里只有1,2,3

 

C# 比较二个数组并找出相同或不同元素的方法