Этот урок посвящен массивам в C#.
Что такое массивы?
Массив — упорядоченный набор элементов одного типа данных. В отличие от переменной, хранящей одно значение, массив хранит множество значений. С каждым элементом массива можно работать как с обычной переменной: выводить на экран, использовать в математических операциях и т.д.
Одномерные массивы
Для создания одномерного массива указывается тип данных (int, byte, short, long, float и др.), квадратные скобки [], имя массива (без специальных символов) и оператор new для выделения памяти.
int[] myInts = new int[5]; // Массив из 5 целых чисел
Этот код создает массив myInts, содержащий 5 целых чисел. Начальные значения элементов не определены. Для доступа к элементу используется индекс (нумерация с 0):
myInts[0] = 250; // Присваивание значения первому элементу (индекс 0)
Аналогично присваиваются значения другим элементам:
myInts[1] = 100;
myInts[2] = 50;
myInts[3] = 200;
myInts[4] = 75;
Обращение к несуществующему элементу (например, myInts[5]) приводит к ошибке. Вывод элемента на экран:
Console.WriteLine(myInts[0]); // Выведет 250
Инициализация одномерного массива
Вместо явного выделения памяти с помощью new можно сразу инициализировать массив значениями:
string[] words = new string[] { "John", "Bob", "Alex" };
Это создает массив words из трех строк. Все элементы массива должны быть одного типа.
Перебор массива с помощью цикла for
Для перебора элементов массива удобно использовать цикл for:
for (int i = 0; i < words.Length; i++)
{
Console.WriteLine(words[i]);
}
words.Length возвращает длину массива.
Массив со случайными значениями и вычисление суммы
Пример создания массива типа short, заполнения его случайными значениями и вычисления суммы элементов:
short[] numBars = new short[10];
Random random = new Random(); // Создаем объект Random вне цикла
for (int i = 0; i < numBars.Length; i++)
{
numBars[i] = Convert.ToInt16(random.Next(-15, 15)); // Случайное число от -15 до 14
Console.WriteLine(numBars[i]);
}
short sum = 0;
for (int i = 0; i < numBars.Length; i++)
{
sum += numBars[i];
}
Console.WriteLine("Сумма: " + sum);
Многомерные массивы
В многомерных массивах каждый элемент является другим массивом. Рассмотрим двумерный массив:
char[,] symbols = new char[2, 3]; // Двумерный массив 2x3
symbols[0, 0] = 'A';
Более наглядное создание двумерного массива:
char[,] myMatrix = new char[,] {
{'A', 'B', 'C'},
{'D', 'E', 'F'}
};
Вывод элементов двумерного массива обычно требует вложенных циклов.
Массивы — эффективный инструмент для хранения и обработки данных в C#, позволяющий работать с коллекциями значений одного типа. Понимание одномерных и многомерных массивов необходимо для разработки многих приложений.