我有一个带有2个字符串和1个double(数量)的类。
类捐赠者
现在,我已经填写了一系列捐赠者。
如何按金额排序?
最佳答案
如果实现 IComparable<Donator>
,您可以这样做:
public class Donator :IComparable<Donator>
{
public string name { get; set; }
public string comment { get; set; }
public double amount { get; set; }
public int CompareTo(Donator other)
{
return amount.CompareTo(other.amount);
}
}
然后,您可以根据需要调用sort,例如:
var donors = new List<Donator>();
//add donors
donors.Sort();
.Sort()
调用您实现的用于排序的CompareTo()
方法。还有不带
IComparable<T>
的lambda选项:var donors = new List<Donator>();
//add donors
donors.Sort((a, b) => a.amount.CompareTo(b.amount));
关于c# - 如何对自定义类数组进行排序?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/2473056/