Инициализаторы коллекций в C#
При создании коллекций можно всегда вызывать метод Add (), например, как показано выше в примере реализации интерфейсов сравнения. Но при создании коллекции можно сократить запись, указав список инициализации, для которого компилятор сформирует автоматические вызовы метода Add (), подставляя в качестве параметров значения из этого списка. Синтаксис аналогичен инициализации массивов: после вызова пустого конструктора в фигурных скобках через запятую перечисляют значения для инициализации списка. Числа перечисляются без изменений, символы заключаются в апострофы, а строки в кавычки. Если коллекция содержит объекты класса, то для инициализации применяется список, каждый элемент которого состоит из операции new, имени_класса и в круглых скобках перечень параметров для конструктора класса. Ниже перечислены основные варианты инициализации списков (и словаря)
List <int> iLst = new List<int>() { 1, 2, 3 };
List <char> cLst = new List<char>() { a, d, h };
List<string> sLst = new List<string>() {"Понедельник", "Вторник", "Среда" };
List<Product> pLst = new List<Product>() {new Product{Name="Пицца", Price=83},
new Product{Name="Багет",Price=65}
};
Dictionary<string, string> d = new Dictionary<string, string>()
{
{"cat", "кошка"},{"dog", "собака"},
};
Инициализаторы коллекций в C#
Лекции по предмету «Программирование»