亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

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
鄂尔多斯市| 肥东县| 叶城县| 苗栗市| 江西省| 常熟市| 建宁县| 鹤壁市| 西林县| 格尔木市| 五家渠市| 东辽县| 苏尼特左旗| 寻乌县| 诏安县| 梅河口市| 托克托县| 祁连县| 谷城县| 金湖县| 阿图什市| 修文县| 库伦旗| 万宁市| 高清| 勃利县| 卫辉市| 恩施市| 舟曲县| 芦山县| 成安县| 辽源市| 土默特右旗| 鹤壁市| 宿州市| 台山市| 沁阳市| 松溪县| 娱乐| 且末县| 远安县|