我正在关注 Apress pro c# 框架的示例,我对 IComparer 接口有疑问如果我想创建一些自定义比较器,它将按名称比较我的对象,我应该实现 IComparer 接口,所以我有以下内容
public class CarNameComparer : IComparer
{
int IComparer.Compare(object obj1, object obj2)
{
Car temp1 = obj1 as Car;
Car temp2 = obj2 as Car;
if (temp1 != null && temp2 != null)
{
return String.Compare(temp1.Name, temp2.Name);
}
else
{
throw new ArgumentException("Parameter is not a Car");
}
}
}
我打电话来像这样比较
Array.Sort(italianCars, new CarNameComparer());
这很好,但这种方法只比较两个实例,据我所知,这是一种有限的用法。如果我想比较一堆对象,而不仅仅是其中两个呢?