Назад Уперед Зміст

Масиви в мові C #

Масивом називають впорядковану сукупність елементів одного типу. Кожен елемент масиву має індекси, які визначають його розташування.

Число індексів характеризує розмірність масиву (одновимірний, двовимірний).

Кожен індекс змінюється в деякому діапазоні [0, n].

Елементи масиву нумеруються з нуля.

В мові C #, як і в багатьох інших мовах, індекси задаються цілочисельним типом.

Масиви в мові C # відносяться до посилальним типам, тобто є динамічними. Тому пам'ять їм відводиться під час виконання програми, в "купі".

При описі масиву, сам масив не формується, а створюється тільки посилання на нього, що має невизначене значення Null. Тому поки елементи масиву не будуть проініціалізовані, використовувати його в обчисленнях можна.

Опис одновимірного масиву, без ініціалізації

При описі масиву не вказується розмір (кількість елементів):

int [] Arr1;

Person [] Arr2;

Масив Arr1 буде містити цілі числа (тобто значення), а масив Arr2 - об'єкти класу Person (тобто посилання на об'єкти).

Квадратні дужки в C # вказуються після типу, перед ім'ям масиву.

Опис двовимірного масиву, без ініціалізації

При описі двовимірного масиву не вказується кількість рядків і стовпців

int [,] Arr;

Масив Arr буде містити цілі числа.

Кількість рядків і стовпців невідомо

Опис одновимірного масиву, з ініціалізацією

Існує два варіанти ініціалізації:

  1. У першому випадку ініціалізація є явною і задається константним масивом. Наприклад:? Double [] x = {5.5, 6.6, 7.7};
    Елементи мають індекси: 0, 1, 2.
  2. У другому випадку створення і ініціалізація масиву виконується в об'єктному стилі з викликом конструктора масиву new. І це найбільш поширена практика оголошення масивів. Приклад:? Int [] d = new int [5];
    Тут 5 - кількість елементів масиву, а їх індекси 0, 1, 2, 3, 4.
    У цьому випадку в динамічної пам'яті створюється сам масив, елементи якого не започатковано константами відповідного типу (нуль для арифметики, порожній рядок для строкових масивів), і посилання зв'язується з цим масивом. Якщо кількість елементів масиву заздалегідь невідомо, то спочатку вводиться кількість елементів, а потім инициализируется масив.

Приклади описів одновимірного масиву з ініціалізацією

Масив створюється за допомогою операції new:
// всі 4 елементи рівні 0
int [] b = new int [4];
// якщо вказані значення, new годі й писати
int [] c = {61, 2, 5, -9};
// розмірність обчислюється
int [] d = new int [] {61, 2, 5, -9};
// надмірне опис
int [] e = new int [4] {61, 2, 5, -9};

Приклади описів двовимірного масиву з ініціалізацією

// масив з 2 рядків і 3 стовпчиків
// всі елементи рівні 0
int [,] b = new int [2,3];
// new мається на увазі
// масив з 2 рядки і 3 стовпчиків
int [,] з = {{1, 2, 3}, {4, 5, 6}};
// розмірність обчислюється 2стор і 3 стовпці
int [,] з = new int [,] {{1, 2, 3}, {4, 5, 6}};
// надмірне опис
int [,] d = new int [2,3] {{1, 2, 3}, {4, 5, 6}};

Приклад

Заповнити целочисленную матрицю розміром 3x4 випадковими числами. знайти:

Назад Уперед Зміст