Коллекции в C# 2010

Автор: Topol Пятница, Июнь 8th, 2012 Нет комментариев

Рубрика: Программирование

Коллекция в С# 2010 (си шарп 2010) – это набор пронумерованных связанных данных. Элементы удобно объединять в коллекцию, чтобы не писать код для каждого из них, а написать единый блок, управляющий все коллекцией. Элементы коллекции можно добавлять, удалять и изменять, при этом размерность коллекции изменяется автоматически, поэтому нет необходимости ее переопределять.

Одним из видов коллекции является массив. Еще один распространенный вид — список. В отличие от массивов, списки поддерживают добавление в начало и в середину коллекции. Они реализуются на основе базового интерфейса IList<T>. Пространство имен, в котором содержатся определения коллекций — System.Collections.Generic.

Рассмотрим пример создания и использования коллекции списочного вида. Обратившись к указанному пространству имен, создадим объект коллекции с именем numbers, в который будем записывать числа:
System.Collections.Generic.List<string> numbers = new System.Collections.Generic.List<string>();
numbers.Add(«1″);
numbers.Add(«3″);
С помощью метода Insert можно добавить элемент в коллекцию в позицию с указанным индексом. Мы добавляем элемент со значением «2» на второе место (нумерация в коллекциях начинается с нуля):
numbers.Insert(1, «2″);
Теперь используем элементы коллекции. Оператор foreach использует «перечислитель», с помощью которого он может перебрать всю коллекцию. Выведем значения на экран:
foreach (object n in numbers)
{
System.Console.WriteLine(n);
}

Чтобы выбрать тот или иной вид коллекции, нужно определиться, для чего она создается, и как будет использоваться. То есть нужно принимать во внимание особенности каждого из видов:

  • Queue – коллекция, элемент которой удаляется сразу после извлечения его значения по принципу «первым поступил — первым ушел («FIFO»)
  • Stack – работа по принципу «последним поступил – первым ушел» («LIFO»)
  • List<T> — предоставляет последовательный доступ к пронумерованным элементам с индексацией от нуля; предоставляет метод для сортировки элементов
  • IDictionary – хранит, кроме значения, его ключ; предоставляет возможность быстрого просмотра для больших коллекций (более десяти элементов)
  • ListDictionary — быстрая работа с малыми коллекциями (менее десяти элементов)
  • StringCollection – хранит только строковые данные

Если выбрать неправильный тип, возможности работы с коллекцией будут ограничены.

Источник: cisharp.com

Оставить комментарий

Чтобы оставлять комментарии Вы должны быть авторизованы.

Похожие посты