如何正确排序这个结构?
struct Person
{
public string Name;
public int Age;
}
List<Person> People = new List<Person>();
// Add several hundred records
// sort by age
People.Sort(Person.Age);
Run Code Online (Sandbox Code Playgroud)
您可以在此处使用lambda 表达式以及泛型:
struct Person {
public string Name;
public int Age;
}
// generic List<T> is much better than deprecated List
List<Person> People = new List<Person>();
...
People.Sort((x, y) => x.Age - y.Age);
Run Code Online (Sandbox Code Playgroud)
另一个流行的解决方案是Linq,但它创建了一个新列表,因此可能效率不高:
People = People.OrderBy(x => x.Age).ToList();
Run Code Online (Sandbox Code Playgroud)