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

溫馨提示×

C#中如何使Intersect正確識別自定義類型

c#
小億
88
2024-04-02 14:45:13
欄目: 編程語言

要使Intersect方法正確識別自定義類型,需要實現IEqualityComparer接口來對自定義類型進行比較。以下是一個示例代碼:

```csharp

using System;

using System.Collections.Generic;

using System.Linq;

class Program

{

static void Main()

{

List list1 = new List

{

new Student { Id = 1, Name = "Alice" },

new Student { Id = 2, Name = "Bob" },

new Student { Id = 3, Name = "Charlie" }

};

List list2 = new List

{

new Student { Id = 2, Name = "Bob" },

new Student { Id = 4, Name = "David" },

new Student { Id = 5, Name = "Eve" }

};

var intersectedStudents = list1.Intersect(list2, new StudentComparer());

foreach (var student in intersectedStudents)

{

Console.WriteLine($"Id: {student.Id}, Name: {student.Name}");

}

}

class Student

{

public int Id { get; set; }

public string Name { get; set; }

}

class StudentComparer : IEqualityComparer

{

public bool Equals(Student x, Student y)

{

return x.Id == y.Id && x.Name == y.Name;

}

public int GetHashCode(Student obj)

{

return obj.Id.GetHashCode() ^ obj.Name.GetHashCode();

}

}

}

```

在這個示例中,定義了一個Student類,并實現了IEqualityComparer接口來比較兩個Student對象。然后,在Main方法中,創建了兩個Student對象的列表,并使用Intersect方法找到兩個列表中共同存在的元素。

0
芦溪县| 荣成市| 鄂州市| 白银市| 宝清县| 疏附县| 雷波县| 杭州市| 阿拉尔市| 仙居县| 紫阳县| 方山县| 宣城市| 名山县| 汉阴县| 武山县| 周至县| 静宁县| 丹东市| 乌拉特中旗| 独山县| 呼伦贝尔市| 修水县| 阳城县| 出国| 凭祥市| 方城县| 修武县| 齐齐哈尔市| 东台市| 华亭县| 含山县| 定西市| 山东省| 五峰| 闽侯县| 隆德县| 汕头市| 涞源县| 茌平县| 永福县|