Сортировка списка (List) в C#
На днях понадобилось сортировать списки, удивительно, на сколько это оказалось просто.
Допустим, имеем мы класс:
public class User
{
public int id;
public string name;
}
Создаем список:
List<User> usr = new List<User>();
//Заполняем список
User u1 = new User();
u1.id = 2;
u1.name = "Ольга";
usr.Add(u1);
u1 = new User();
u1.id = 1;
u1.name = "Дима";
usr.Add(u1);
u1 = new User();
u1.id = 3;
u1.name = "Света";
usr.Add(u1);
Теперь чтобы отсортировать его по полю ID надо сделать всего лишь, вот это:
usr.Sort(delegate(User us1, User us2)
{ return us1.id.CompareTo(us2.id); });
Вот что получается:
Далее как видно по картинке, мне стало любопытно, насколько это всё быстро делается?
Результат удивил, я ожидал чего нибудь более скромного.
Заполнял список 100000 записей, в первом поле время ушедшее на заполнение, во втором на сортировку по полю ID.
Исходник примера можно скачать здесь:
Скачать файл: testlistsort.rar [57.69 Kb] (cкачиваний: 4)