|
|
|
 |
 |
Исходник |
 |
|
 |
 |
|
Автор:
|
|
|
Название:
|
Сортировка экземпляров собственных типов в ArrayList`e с использованием IComparer. |
|
Дата:
|
12 September 2005 |
|
Описание: |
Создавая свои типы, с дальнейшим использованием их как единицу данных, часто требуется сортировка коллекции (массива) таких типов. В данном примере показано, как можно сортировать коллекцию типов Film, находящуюся в ArrayList, с использованием интерфейса IComparer. |
| |
Разместить ссылку на этот исходник в форуме вы можете вставив в текст сообщения
следующую строку:
[CODEPOST ID=162]Сортировка экземпляров собственных типов в ArrayList`e с использованием IComparer.[/CODEPOST] |
| Оценка: |
Проголосовало 7 посетителей, средняя оценка 4.29 |
| Оценить: |
|
1 // cоздадим тип для описания фильмов c некоторыми полями
2 // (свойства не создаю, чтобы не загрмождать нужный код):
3 public class Film
4 {
5 public string Title;
6 public string Year;
7 public string Genre;
8 public string Description;
9 // ...
10 }
11
12 // теперь создадим свой класс-компаратор, унаследованный от IComparer
13 // и сравнивающий наши фильмы, например, по названию:
14 public class TitleComparer : IComparer
15 {
16 public int Compare(Object x, Object y)
17 {
18 return string.Compare((x as Film).Title, (y as Film).Title);
19 }
20 }
21
22 // как использовать:
23 public class SomeClass
24 {
25 ArrayList list = new ArrayList();
26 // предположим, что этот ArrayList уже заполнен
27
28 public void Sort()
29 {
30 // создаём экземпляр нашего класса-компаратора
31 TitleComparer comp = new TitleComparer();
32 // сортируем, следуя установке нашего класса-компаратора
33 list.Sort(comp);
34 // получаем список фильмов отсортированных по названию
35 }
36 }
37
38 |
| Вернуться к списку исходников в категории Общие вопросы программирования на ASP.NET |
|
|
 |
 |
 |
 |
|
|