public class DesignFieldSort : IComparer<LSFormDesigner.IDesignFieldSearch> { #region IComparer<DesignForm> 成员 public int Compare(IDesignFieldSearch x, IDesignFieldSearch y) { return x.SortValue.CompareTo(y.SortValue); } #endregion }void main() { List<LSFormDesigner.IDesignFieldSearch> list = new List<>(LSFormDesigner.IDesignFieldSearch); list.Sort(new DesignFieldSort ()); }
List<T> t=new List<T>(); t.Sort(delegate( t p1, t p2) { return p1.ID.CompareTo(p2.ID); });public class Student { public string Name{get;set;} public string Age{get;set;} } public class StudentComparer : IComparer<Student> { public enum CompareType { Name, Age } private CompareType type; public StudentComparer(CompareType type) { this.type = type; } public int Compare(Student x, Student y) { switch(this.type) { case CompareType.Name: return x.Name.CompareTo(y.Name); defaqult: return x.Age.CompareTo(y.Age); } } }
int len = 100; List<int> lst = new List<int>(); Random ra = new Random(); for (int i = 0; i < len; i++) { lst.Add(ra.Next(0, 10)); } lst.Sort(); for (int i = 0; i < len; i++) { Console.WriteLine(lst[i]); }
list<>这个里面是要传对象!
public class DesignFieldSort : IComparer<LSFormDesigner.IDesignFieldSearch>
{ #region IComparer<DesignForm> 成员 public int Compare(IDesignFieldSearch x, IDesignFieldSearch y)
{
return x.SortValue.CompareTo(y.SortValue);
} #endregion }void main()
{
List<LSFormDesigner.IDesignFieldSearch> list = new List<>(LSFormDesigner.IDesignFieldSearch);
list.Sort(new DesignFieldSort ());
}
t.Sort(delegate( t p1, t p2) { return p1.ID.CompareTo(p2.ID); });public class Student
{
public string Name{get;set;}
public string Age{get;set;}
}
public class StudentComparer : IComparer<Student>
{
public enum CompareType
{
Name,
Age
}
private CompareType type;
public StudentComparer(CompareType type)
{
this.type = type;
}
public int Compare(Student x, Student y)
{
switch(this.type)
{
case CompareType.Name:
return x.Name.CompareTo(y.Name);
defaqult:
return x.Age.CompareTo(y.Age);
}
}
}
{
lst.Add(ra.Next(0, 10));
} lst.Sort(); for (int i = 0; i < len; i++)
{
Console.WriteLine(lst[i]);
}
使用起来是不是:
Student student;...student.Sort(new StudentComparer());
?
{赋值}
list.sort()`
list.Sort((customer1, customer2) => customer1.CompareTo(customer2));如果你不是3.5,用上面的语句编译出错的话,可以用显示的委托:list.Sort(delegate(string customer1, string customer2) { return customer1.CompareTo(customer2); });
racers.add.........racers.Sort(delegate(Racer r1, Racer r2)
{
return r1.Name.CompareTo(r2.Name);
});