zoukankan      html  css  js  c++  java
  • c#List结合IEqualityComparer求交集

    List元素类:

        public class MultiPointSearchingRet
        {
            public int ID { get; set; }
            public string PlateNumber { get; set; }
            public int VehicleBrand1 { get; set; }
            public string BrandName { get; set; }
          }

    实现了IEqualityComparer的比较类:

        public class MultiPointSearchingRetComparer : IEqualityComparer<MultiPointSearchingRet>
        {
            public bool Equals(MultiPointSearchingRet x, MultiPointSearchingRet y)
            {
                return x.PlateNumber == y.PlateNumber && x.VehicleBrand1 == y.VehicleBrand1;
            }
    
            public int GetHashCode(MultiPointSearchingRet obj)
            {
                return obj.ID.GetHashCode();
            }
        }

    调用:

                List<MultiPointSearchingRet>[] tmpLst = new List<MultiPointSearchingRet>[10];
                List<MultiPointSearchingRet> retLst = new List<MultiPointSearchingRet>();
                //
                for (int i = 0; i < length; i++)
                {
                    if (i == 0)
                        retLst = tmpLst[i];
                    else
                        retLst = retLst.Intersect(tmpLst[i], new MultiPointSearchingRetComparer()).ToList();
                }
  • 相关阅读:
    生成器表达式
    列表生成式
    内置---排序(sorted)
    移动端摘要
    支付宝支付框js代码
    list-style-image不能设置位置
    vue-cli
    微信底部的菜单栏
    input在标签内设置禁止输入空格
    访问对象
  • 原文地址:https://www.cnblogs.com/zhengwk/p/5264767.html
Copyright © 2011-2022 走看看