在C#中,可以使用LINQ的DistinctBy
方法来实现对集合中的元素进行去重。这个方法需要一个lambda表达式来指定根据哪个属性或条件进行去重。下面是一个简单的示例:
using System; using System.Collections.Generic; using System.Linq; class Program { static void Main() { Listpeople = new List { new Person { Name = "John", Age = 30 }, new Person { Name = "Jane", Age = 28 }, new Person { Name = "John", Age = 30 }, new Person { Name = "Alice", Age = 25 } }; var distinctPeople = people.DistinctBy(p => p.Name); foreach (var person in distinctPeople) { Console.WriteLine($"Name: {person.Name}, Age: {person.Age}"); } } } class Person { public string Name { get; set; } public int Age { get; set; } }
在这个示例中,我们有一个Person
类,包含Name
和Age
属性。我们创建了一个包含四个Person
对象的列表,并使用DistinctBy
方法根据Name
属性进行去重。最后,我们遍历去重后的集合并输出每个对象的名称和年龄。