91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

C#中怎么使用Intersect自定義對象列表

c#
小億
94
2024-04-02 10:01:58
欄目: 編程語言

在C#中使用Intersect方法對自定義對象列表進行交集操作,需要重寫自定義對象的Equals和GetHashCode方法,以確保比較兩個對象是否相等的準確性。

假設有一個自定義對象Person,包含屬性Id和Name,示例代碼如下:

public class Person
{
    public int Id { get; set; }
    public string Name { get; set; }

    public override bool Equals(object obj)
    {
        if (obj == null || GetType() != obj.GetType())
        {
            return false;
        }

        Person other = (Person)obj;
        return Id == other.Id && Name == other.Name;
    }

    public override int GetHashCode()
    {
        return Id.GetHashCode() ^ Name.GetHashCode();
    }
}

然后創建兩個Person對象列表,使用Intersect方法找到它們的交集:

List<Person> list1 = new List<Person>
{
    new Person { Id = 1, Name = "Alice" },
    new Person { Id = 2, Name = "Bob" },
    new Person { Id = 3, Name = "Charlie" }
};

List<Person> list2 = new List<Person>
{
    new Person { Id = 2, Name = "Bob" },
    new Person { Id = 3, Name = "Charlie" },
    new Person { Id = 4, Name = "David" }
};

var intersectList = list1.Intersect(list2).ToList();

foreach (var person in intersectList)
{
    Console.WriteLine(person.Id + " " + person.Name);
}

以上代碼將輸出:

2 Bob
3 Charlie

0
龙岩市| 旺苍县| 莫力| 金堂县| 榆树市| 岗巴县| 孙吴县| 彰武县| 贺州市| 吴旗县| 宝兴县| 甘洛县| 剑川县| 岐山县| 大邑县| 鹿邑县| 黄冈市| 阜南县| 油尖旺区| 叙永县| 常宁市| 珠海市| 娄烦县| 重庆市| 南宫市| 聊城市| 得荣县| 法库县| 蓝田县| 化隆| 乐山市| 和龙市| 元朗区| 阜康市| 凉城县| 郎溪县| 绥宁县| 沂南县| 吉林省| 孟连| 普安县|