Масиви в Сі-Шарпі
Масив - це набір однотипних даних, які розташовуються в пам'яті послідовно один за одним. Доступ до елементів масиву здійснюється за індексом (номером) елемента. Масив може містити елементи будь-якого типу даних, навіть можна створювати масив масивів (ступінчастий масив). Кількість елементів у масиві називається розміром масиву. Масиви відносяться до посилальних типів даних.
Масиви в Сі-Шарпі можуть бути одновимірними і багатовимірними.
Одномірні масиви
Одновимірний масив ще називається вектором, і для доступу до його елементів використовується тільки один індекс. Виглядає вектор приблизно так:
тип[] ім'я_масиву = new тип[розмір масиву];
Якщо відбувається ініціалізація, оператор new можна упускати:
Доступ до елементів здійснюється за індексом. Слід пам'ятати, що індексація починається з нуля – перший елемент масиву має індекс 0, а останній n-1 де n – розмір масиву.
static void Main(string[] args) int[] numbers = new int[5]; numbers[0] = 5; numbers[1] = 2; numbers[4] = 3; numbers[5] = 2; // помилка, індекс поза рамками масиву >
В якості масиву можна подати, наприклад, список студентів у групі (імена), показники температури повітря за останні кілька днів і так далі.
Багатомірні масиви
Одним із випадків багатовимірного масиву служить двовимірний масив (матриця). У матриці для доступу до елементів необхідно використовувати два індекси.

Кількість індексів, що використовуються для доступу до елементів масиву називаєтьсярозмірність масиву.
Елементу масиву numbers1 з координатами 1,1 надамо значення 8: numbers1[1, 1] = 8;
Багатовимірні масививикористовуються набагато рідше за одномірні.
Наведу трохи маячний приклад даних, які можна було б подати як двовимірний масив:
Є матриця 7*4. Рядки, яких сім, будуть відповідати дням тижня, а 4 стовпці - часу дня (00:00, 06:00, 12:00, 18:00). Як дані буде температура повітря.
Значення температури з координатами 2,3 буде відповідати температурі в середу о 18:00. Насправді, звісно, такі дані представлялися в іншому вигляді, але для прикладу підійде.
Ступінчасті (jagged) масиви в Сі-шарп
Ступінчастий (jagged) масив – це масив масивів. У ньому довжина кожного масиву може бути різною. Приблизно це так:

static void Main(string[] args) int[][] array = new int[3][]; // оголошуємо масив, що містить 3 масиву array [0] = new int[3]; //створення внутрішнього масиву array [1] = new int[2]; array [2] = new int[5]; >
Доступ до елементів здійснюється за тим же принципом, як і з багатовимірними масивами, тільки тут вже беруть участь дві пари квадратних дужок (продовження прикладу вище):
array [0] [1] = 5; array [1] [1] = 8; array [1] [2] = 5; // помилка, індекс «2» поза межами масиву
ВластивістьLength
Всі масиви є об'єктами і вони мають деякі властивості. Найкориснішою для нас буде властивість Length, яка повертає кількість елементів у масиві (у всіх розмірностях)
static void Main(string[] args) int[] numbers = new int[5]; int size = numbers.Length; // size = 5 >
Клас List
Клас List служить для роботи зі списками, про що говорить його назва. Це такий «наворочений» масив. Головна відмінність від простого масиву в тому, що віндинамічний – ви можете вставляти та видаляти елементи у будь-який час, у той час як у простому масиві розмір вказується при створенні та зробити його більше чи менше не можна.
static void Main(string[] args) List teams = new List (); // створення списку teams.Add("Barcelona"); // Додавання елемента teams.Add("Chelsea"); teams.Add("Arsenal"); List teams2 = new List(); // ініціалізація >
Додавання елементів
Для додавання елементів до списку в ньому реалізовано декілька методів: