Введение
Массивы — это одна из основных конструкций в программировании, которая позволяет хранить набор элементов одного типа. В C#, массивы используются повсеместно благодаря своей простоте и эффективности. В этой статье мы подробно разберём, что такое массивы в C#, как их создавать, использовать и какие операции с ними можно выполнять.
Что такое массив?
Массив в C# — это коллекция элементов одного типа, хранящихся в памяти непрерывно, где каждый элемент имеет индекс. Индексация начинается с нуля.
Объявление массива
int[] myArray;
Здесь мы объявили массив целых чисел myArray
, но пока что он не содержит ни одного элемента.
Инициализация массива
Статическая инициализация:
int[] myArray = new int[5]; // Массив из 5 элементов
Инициализация с набором значений:
int[] myArray = { 1, 2, 3, 4, 5 };
Работа с элементами массива
Доступ к элементам массива осуществляется по индексу:
int[] myArray = { 1, 2, 3, 4, 5 };
int firstElement = myArray[0]; // 1
int thirdElement = myArray[2]; // 3
Индексы в массиве начинаются с 0, так что myArray[0]
возвращает первый элемент.
Изменение элементов
myArray[3] = 100; // Меняем четвертый элемент массива на 100
Особенности массивов в C
Размер массива
Размер массива в C# фиксирован после создания. Вы не можете увеличить или уменьшить его после инициализации. Для динамически изменяемых коллекций используются другие типы, например List<T>
.
Перебор элементов массива
Для перебора элементов массива обычно используют циклы, такие как for
или foreach
:
foreach (int item in myArray)
{
Console.WriteLine(item);
}
Многомерные массивы
В C# есть поддержка многомерных массивов. Есть два типа: прямоугольные и ступенчатые (jagged).
Прямоугольные массивы:
int[,] matrix = new int[2, 3];
Такой массив представляет собой матрицу 2×3.
Ступенчатые массивы:
int[][] jaggedArray = new int[3][];
jaggedArray[0] = new int[2];
jaggedArray[1] = new int[3];
jaggedArray[2] = new int[4];
Каждый ‘ряд’ такого массива может иметь разную длину.
Полезные операции с массивами
- Длина массива: свойство
Length
возвращает количество элементов в массиве. - Сортировка: метод
Array.Sort(myArray)
сортирует массив по возрастанию. - Поиск: метод
Array.Find(myArray, условие)
помогает найти элемент, соответствующий условию. - Копирование:
Array.Copy(sourceArray, destinationArray, length)
используется для копирования элементов из одного массива в другой.
Заключение
Массивы в C# — это мощный и гибкий инструмент. Хоть их размер и фиксирован после создания, они обеспечивают высокую производительность за счет непрерывного расположения элементов в памяти. Используйте массивы для структурированного хранения данных, когда вы заранее знаете их количество и вам необходим быстрый доступ к элементам по индексу.
Эта статья является лишь вводным руководством в мир массивов C#. Существует множество продвинутых тем и техник работы с массивами, включая многомерные массивы, обработку и трансформацию данных, которые вы сможете изучить по мере погружения в язык.