C#中取两个集合的交集/并集/差集 a.Intersect(b)


IEnumerable<string> result = null;
List<string> a = new List<string> ();
List<string> b = new List<string>() { "a","b","c","d"};
List<string> c = new List<string>() { "c", "d", "e", "f" };
//a b取交集
result = a.Intersect(b);
Console.WriteLine($"a.Intersect(b)");
Console.WriteLine($"a,b取交集,a:空,b:\"{string.Join(",", b)}\",结果:{string.Join<string>(",",result)}");
Console.WriteLine("===========");
//a b取并集
result = a.Union(b);
Console.WriteLine($"a.Union(b)");
Console.WriteLine($"a,b取并集,a:空,b:\"{string.Join(",", b)}\",结果:{string.Join<string>(",", result)}");
Console.WriteLine("===========");
//a b取差集
result = a.Except(b);
Console.WriteLine($"a.Except(b)");
Console.WriteLine($"a,b取差集,a:空,b:\"{string.Join(",", b)}\",结果:{string.Join<string>(",", result)}");
Console.WriteLine("===========");
//b a取差集
result = b.Except(a);
Console.WriteLine($"b.Except(a)");
Console.WriteLine($"b,a取差集,a:空,b:\"{string.Join(",", b)}\",结果:{string.Join<string>(",", result)}");
Console.WriteLine("===============================================");


       

a.Intersect(b)
a,b取交集,a:空,b:"a,b,c,d",结果:
===========
a.Union(b)
a,b取并集,a:空,b:"a,b,c,d",结果:a,b,c,d
===========
a.Except(b)
a,b取差集,a:空,b:"a,b,c,d",结果:
===========
b.Except(a)
b,a取差集,a:空,b:"a,b,c,d",结果:a,b,c,d
===============================================
b.Intersect(c)
b,c取交集,b:"a,b,c,d",c:"c,d,e,f",结果:c,d
===========
b.Union(c)
b,c取并集,b:"a,b,c,d",c:"c,d,e,f",结果:a,b,c,d,e,f
===========
b.Except(c)
b,c取差集,b:"a,b,c,d",c:"c,d,e,f",结果:a,b
===========
c.Except(b)
c,b取差集,b:"a,b,c,d",c:"c,d,e,f",结果:e,f


 

posted @ 2021-04-01 21:29  LIGHTPRO  阅读(503)  评论(0编辑  收藏  举报