zoukankan      html  css  js  c++  java
  • 求2个集合的差集

            /// <summary>
            /// 求2个集合的差集
            /// </summary>
            public class wage
            {
                public static void Test()
                {
                    List<wage> list1 = new List<wage>
                                           {
                                               new wage { Id = 1, Name = "list1" },
                                               new wage { Id = 2, Name = "list1" },
                                               new wage { Id = 3, Name = "list1" },
                                               new wage { Id = 5, Name = "list1" },
                                               new wage { Id = 6, Name = "list1" }
                                           };
                    List<wage> list2 = new List<wage>
                                           {
                                               new wage { Id = 1, Name = "list2", },
                                               new wage { Id = 2, Name = "list2", },
                                               new wage { Id = 3, Name = "list2", },
                                               new wage { Id = 4, Name = "list2", },
                                               new wage { Id = 5, Name = "list2", }
                                           };
    
                    ////var union = list1.Union(list2, new MyComparer()).ToList();
                    ////var intersect = list1.Intersect(list2, new MyComparer()).ToList();
                    ////var except = union.Except(intersect, new MyComparer()).ToList();
    
                    var result = list1.Union(list2, new MyComparer()).Except(list1.Intersect(list2, new MyComparer()), new MyComparer());
                    foreach (var item in result)
                    {
                        Console.WriteLine("id = {0},  name = {1}", item.Id, item.Name);
                    }
                }
    
                public int Id { set; get; }
    
                public string Name { set; get; }
    
                public class MyComparer : IEqualityComparer<wage>
                {
                    public bool Equals(wage x, wage y)
                    {
                        return x.Id == y.Id;
                    }
    
                    public int GetHashCode(wage obj)
                    {
                        return obj.Id;
                    }
                }
            }
  • 相关阅读:
    POJ 1251 Jungle Roads
    1111 Online Map (30 分)
    1122 Hamiltonian Cycle (25 分)
    POJ 2560 Freckles
    1087 All Roads Lead to Rome (30 分)
    1072 Gas Station (30 分)
    1018 Public Bike Management (30 分)
    1030 Travel Plan (30 分)
    22. bootstrap组件#巨幕和旋转图标
    3. Spring配置文件
  • 原文地址:https://www.cnblogs.com/liuxiaoji/p/4580296.html
Copyright © 2011-2022 走看看