Масиви в Сі-Шарпі

Масив - це набір однотипних даних, які розташовуються в пам'яті послідовно один за одним. Доступ до елементів масиву здійснюється за індексом (номером) елемента. Масив може містити елементи будь-якого типу даних, навіть можна створювати масив масивів (ступінчастий масив). Кількість елементів у масиві називається розміром масиву. Масиви відносяться до посилальних типів даних.

Масиви в Сі-Шарпі можуть бути одновимірними і багатовимірними.

Одномірні масиви

Одновимірний масив ще називається вектором, і для доступу до його елементів використовується тільки один індекс. Виглядає вектор приблизно так:

тип[] ім'я_масиву = 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(); // ініціалізація >

Додавання елементів

Для додавання елементів до списку в ньому реалізовано декілька методів: