zoukankan      html  css  js  c++  java
  • 对List取交集、联集及差集

    1.  取交集 (A和B都有)
    List A : { 1 , 2 , 3 , 5 , 9 }
    List B : { 4 , 3 , 9 }
       var intersectedList = list1.Intersect(list2); 
       結果 : { 3 , 9 }

    判斷A和B是否有交集
      boolean isIntersected = list1.Intersect(list2).Count() > 0

    2. 取差集 (A有,B沒有)
    List A : { 1 , 2 , 3 , 5 , 9 }
    List B : { 4 , 3 , 9 }
        var expectedList = list1.Except(list2); 
       结果: { 1 , 2 , 5 }

    判断A和B是否有差集
       boolean isExpected = list1.Expect(list2).Count() > 0

    3.  取联集 (包含A和B)
    List A : { 1 , 2 , 3 , 5 , 9 }
    List B : { 4 , 3 , 9 }

    01 public static class ListExtensions
    02 {
    03        public static List<T> Merge<T>(this List<T> source, List<T> target)
    04        {
    05            List<T> mergedList = new List<T>(source);
    06            mergedList.AddRange(target.Except(source));
    07            return mergedList;
    08        }
    09 }
    10  
    11 var mergedList = list1.Merge(list2);
    12 //結果 : { 1 , 2 , 3 , 5 ,9 , 4 }
  • 相关阅读:
    C++计时器:毫秒级和微秒级
    28款GitHub最流行的开源机器学习项目
    图像旋转公式 旋转中心点
    JNA
    this
    Random Javascript code snippets
    type
    TreeView的异步延时加载
    C#递归所以部门展示到TreeView
    C#判断是否是节假日
  • 原文地址:https://www.cnblogs.com/AllUserBegin/p/3526740.html
Copyright © 2011-2022 走看看