C#中取两个集合的交集/并集/差集

C#中取两个集合的交集/并集/差集

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
===========

 

 

            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("===============================================");


            //b,c取交集
            result = b.Intersect(c);
            Console.WriteLine($"b.Intersect(c)");
            Console.WriteLine($"b,c取交集,b:\"{string.Join(",", b)}\",c:\"{string.Join(",", c)}\",结果:{string.Join<string>(",", result)}");
            Console.WriteLine("===========");
            //b,c取并集
            result = b.Union(c);
            Console.WriteLine($"b.Union(c)");
            Console.WriteLine($"b,c取并集,b:\"{string.Join(",", b)}\",c:\"{string.Join(",", c)}\",结果:{string.Join<string>(",", result)}");
            Console.WriteLine("===========");
            //b,c取差集
            result = b.Except(c);
            Console.WriteLine($"b.Except(c)");
            Console.WriteLine($"b,c取差集,b:\"{string.Join(",", b)}\",c:\"{string.Join(",", c)}\",结果:{string.Join<string>(",", result)}");
            Console.WriteLine("===========");
            //b,c取差集
            result = c.Except(b);
            Console.WriteLine($"c.Except(b)");
            Console.WriteLine($"c,b取差集,b:\"{string.Join(",", b)}\",c:\"{string.Join(",", c)}\",结果:{string.Join<string>(",", result)}");
            Console.WriteLine("===========");
            Console.Read();

 

 

  • 5
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值