В массиве хранится последовательная коллекция фиксированного размера элементов одного типа. Массив используется для хранения набора данных, но часто более полезно думать о массиве как о коллекции переменных того же типа, хранящихся в смежных местах памяти.
Вместо того, чтобы объявлять отдельные переменные, такие как number0, number1, … и number99, вы объявляете одну переменную массива, такую как числа, и используете числа [0], числа [1] и …, числа [99] для представления отдельные переменные. Определенный элемент в массиве доступен по индексу.
Все массивы состоят из смежных областей памяти. Самый низкий адрес соответствует первому элементу, а самый высокий адрес — последнему.
Объявление массивов
Чтобы объявить массив в C #, вы можете использовать следующий синтаксис —
datatype[] arrayName;
где,
-
Тип данных используется для указания типа элементов в массиве.
-
[] определяет ранг массива. Ранг определяет размер массива.
-
arrayName указывает имя массива.
Тип данных используется для указания типа элементов в массиве.
[] определяет ранг массива. Ранг определяет размер массива.
arrayName указывает имя массива.
Например,
double[] balance;
Инициализация массива
Объявление массива не инициализирует массив в памяти. Когда переменная массива инициализируется, вы можете присвоить значения массиву.
Массив является ссылочным типом, поэтому вам нужно использовать ключевое слово new для создания экземпляра массива. Например,
double[] balance = new double[10];
Присвоение значений массиву
Вы можете назначить значения отдельным элементам массива, используя номер индекса, например:
double[] balance = new double[10]; balance[0] = 4500.0;
Вы можете присвоить значения массиву во время объявления, как показано на рисунке —
double[] balance = { 2340.0, 4523.69, 3421.0};
Вы также можете создать и инициализировать массив, как показано на рисунке —
int [] marks = new int[5] { 99, 98, 92, 97, 95};
Вы также можете опустить размер массива, как показано на рисунке —
int [] marks = new int[] { 99, 98, 92, 97, 95};
Вы можете скопировать переменную массива в другую целевую переменную массива. В этом случае и цель, и источник указывают на одну и ту же область памяти —
int [] marks = new int[] { 99, 98, 92, 97, 95}; int[] score = marks;
При создании массива компилятор C # неявно инициализирует каждый элемент массива значением по умолчанию в зависимости от типа массива. Например, для массива int все элементы инициализируются в 0.
Доступ к элементам массива
Доступ к элементу осуществляется путем индексации имени массива. Это делается путем помещения индекса элемента в квадратные скобки после имени массива. Например,
double salary = balance[9];
В следующем примере демонстрируются декларация вышеупомянутых концепций, присваивание и доступ к массивам —
using System; namespace ArrayApplication { class MyArray { static void Main(string[] args) { int [] n = new int[10]; /* n is an array of 10 integers */ int i,j; /* initialize elements of array n */ for ( i = 0; i < 10; i++ ) { n[ i ] = i + 100; } /* output each array element's value */ for (j = 0; j < 10; j++ ) { Console.WriteLine("Element[{0}] = {1}", j, n[j]); } Console.ReadKey(); } } }
Когда приведенный выше код компилируется и выполняется, он дает следующий результат —
Element[0] = 100 Element[1] = 101 Element[2] = 102 Element[3] = 103 Element[4] = 104 Element[5] = 105 Element[6] = 106 Element[7] = 107 Element[8] = 108 Element[9] = 109
Использование цикла foreach
В предыдущем примере мы использовали цикл for для доступа к каждому элементу массива. Вы также можете использовать оператор foreach для перебора массива.
using System; namespace ArrayApplication { class MyArray { static void Main(string[] args) { int [] n = new int[10]; /* n is an array of 10 integers */ /* initialize elements of array n */ for ( int i = 0; i < 10; i++ ) { n[i] = i + 100; } /* output each array element's value */ foreach (int j in n ) { int i = j-100; Console.WriteLine("Element[{0}] = {1}", i, j); } Console.ReadKey(); } } }
Когда приведенный выше код компилируется и выполняется, он дает следующий результат —
Element[0] = 100 Element[1] = 101 Element[2] = 102 Element[3] = 103 Element[4] = 104 Element[5] = 105 Element[6] = 106 Element[7] = 107 Element[8] = 108 Element[9] = 109
C # массивы
Существует несколько важных концепций, связанных с массивом, которые должны быть понятны программисту C # —
C # поддерживает многомерные массивы. Простейшей формой многомерного массива является двумерный массив.
C # поддерживает многомерные массивы, которые являются массивами массивов.
Вы можете передать функции указатель на массив, указав имя массива без индекса.
Это используется для передачи неизвестного количества параметров в функцию.
Определенный в пространстве имен System, он является базовым классом для всех массивов и предоставляет различные свойства и методы для работы с массивами.