下面我来详细讲解一下c#对list排序的攻略。
如何对List排序
在C#中,可以在List类上使用Sort()方法对其进行排序。Sort()方法根据列表中的元素实现了IComparable
List<int> numList = new List<int>() { 5, 4, 3, 2, 1 };
numList.Sort();
以上的代码展示了如何对一个整数列表进行排序。在这个示例中,numericalList.Sort()命令按升序对数字进行排序。
自定义排序
在实际的项目中,需要对自定义类型的List进行排序,这时就需要实现自定义Comparison
以下是一个自定义类型Person的示例,其中按年龄从大到小排序:
class Person
{
public string Name { get; set; }
public int Age { get; set; }
}
public class AgeComparer : IComparer<Person>
{
public int Compare(Person x, Person y)
{
if (x.Age < y.Age)
return 1;
else if (x.Age > y.Age)
return -1;
else
return 0;
}
}
List<Person> personList = new List<Person>{
new Person { Name="John", Age=25 },
new Person { Name="David", Age=33 },
new Person { Name="Alex", Age=22 },
new Person { Name="Mike", Age=49 }
};
personList.Sort(new AgeComparer());
以上的代码展示了如何按照年龄从大到小对Person列表进行排序。
结论
在C#中,List类提供了Sort()方法来排序列表中的元素。它默认按照元素值进行升序排序。如果要根据自定义规则进行排序,则需要实现IComparer
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:c#对list排序示例 - Python技术站