zoukankan      html  css  js  c++  java
  • C# List<T>集合布尔运算

    交集

    使用C#语言提供的Intersect方法快速来实现两个集合之间的交集运算。

    Intersect方法调用的格式为:

    • 格式:List1.Intersect(List2)
    • 参数:List1和List2是相同类型的List集合数据
    • 返回:IENUMABLE类型,可再使用ToList()方法转换回List集合类型数据。

    例如下列两个集合都为List集合,针对list1和list2求交集可使用以下语句:

    List<int> list1 = new List<int>() { 1, 2, 3, 4, 5, 6, 7 };
    List<int> list2 = new List<int>() { 4, 5, 6, 7, 8, 9, 10 };
    List<int> jiaojiList = list1.Intersect(list2).ToList();//使用Intersect方法求交集运算。 
    

    最后得到的结果集合jiaojiList中的数据为:4,5,6,7。

    注:上述语句只针对普通基础的值类型,如果针对自定义类的对象的话,如果要求交集运算,则是需要相同的对象引用才算是交集中的数据,而非两个对象相同即是交集

    并集

    使用C#语言提供的Union方法快速来实现两个集合之间的并集运算。

    Union方法调用的格式为:

    • 格式:List1.Union(List2)
    • 参数:List1和List2是相同类型的List集合数据
    • 返回:IENUMABLE类型,可再使用ToList()方法转换回List集合类型数据。

    例如下列两个集合都为List集合,针对list1和list2求交集可使用以下语句:

    List<int> oldArray = { 1, 2, 3, 4, 5 };
    List<int> newArray = { 2, 4, 5, 7, 8, 9 };
    var bingJi = oldArray.Union(newArray).ToList();//1,2,3,4,5,7,8,9
    

    最后得到的结果集合jiaojiList中的数据为:1,2,3,4,5,7,8,9

    差集

    使用C#语言提供的Except方法快速来实现两个集合之间的差运算。
    Except方法调用的格式为:

    List1-List2

    • 格式:List1.Except(List2)
    • 参数:List1和List2是相同类型的List集合数据
    • 返回:IENUMABLE类型,可再使用ToList()方法转换回List集合类型数据。

    List2-List1

    • 格式:List2.Except(List1)
    • 参数:List2和List1是相同类型的List集合数据
    • 返回:IENUMABLE类型,可再使用ToList()方法转换回List集合类型数据。

    例如下列两个集合都为List集合,针对list1和list2求差集可使用以下语句:

    List<int> oldArray = { 1, 2, 3, 4, 5 };
    List<int> newArray = { 2, 4, 5, 7, 8, 9 }; 
    
    var oldChaJi = oldArray.Except(newArray).ToList();//1,3
    var newChaJi = newArray.Except(oldArray).ToList();//7,8,9
    
  • 相关阅读:
    vue通过webpack打包后怎么运行
    vue中请求本地的json数据
    electron打包成桌面应用程序的详细介绍
    Web应用架构-Services
    Web应用架构-Full-text Search Service
    Web应用架构-Job Queue & Servers
    Web应用架构-Caching Service
    Web应用架构-Database
    设计模式:设计模式概述&JDK中的应用
    常见面试问题总结
  • 原文地址:https://www.cnblogs.com/zixuan203344/p/12033737.html
Copyright © 2011-2022 走看看