Спонсор публикаций HOSTLAND.RU

Hostland.RU уже более 10 лет является профессионалом в сфере предоставления виртуального хостинга и целого ряда сопутствующих услуг. Мы отвечаем за качество нашей работы.

Создание динамического массива в языке c#

На днях мне попалась задача, для решения которой требовалось создать динамический массив. Обычно я привык вместо массивов использовать обобщенные списки List<T>, которые по умолчанию являются динамическими. Но, по условию задачи требовалось работать именно с массивом, который не является таковым, поэтому возникла небольшая проблема, решение которой описано в этой статье.

В языке c# под словом массив подразумевается объект с заранее заданным неизменяемым размером. То есть, к примеру, если Вы создали массив, который содержит пять элементов, то увеличить данный размер динамически Вы уже не сможете, так как он является фиксированным. В этом можно легко убедиться, воспользовавшись свойством IsFixedSize.

С помощью данного свойства Вы можете определить, имеет ли созданный массив фиксированную длину. Если результатом является значение true, как в данном примере, то это значит, что мы не можем добавлять или удалять элементы в уже созданном массиве, то есть изменять его текущий размер. Но, при этом мы можем изменять его существующие элементы.



Так как задача довольно актуальная, то какой-то способ решения всё-таки должен быть. И он есть. Если Вам необходимо создать динамический массив, то Вы можете воспользоваться, например методом Resize класса System.Array.

Данный метод принимает два параметра: имя массива и его новый размер. В ходе выполнения метода, будет создан новый массив указанной нами длины, после чего все значения из старого массива будут скопированы в него. В результате мы получаем динамический массив. Задача решена.

Либо мы можем схитрить и всё-таки решить данную задачу, воспользовавшись обобщенным списком List<T> класса System.Collections.Generic, например:

Вместо массива мы используем список, который, как уже говорилось ранее, по умолчанию является динамическим. С помощью него мы выполняем всю необходимую работу и как только добиваемся нужного результата, то с помощью метода ToArray преобразуем список в массив.

Читайте также:


Спонсор публикаций BlackDiver

Обучение тестированию на проникновение  - Обучению тестированию на проникновение от BlackDiver. Базовый курс

Похожие темы

Нахождение минимального элемента массива... В одной из предыдущих статей мы рассмотрели, как найти максимальный элемент массива, а сегодня хочу показать, как найти минимальный элемент массива ...
Как определить тип массива в языке c#... Как определить тип массива? Эта статья будет полезна начинающим программистам, в ней я расскажу, как определить тип массива в языке c#. Сразу же скаж...
c# Как найти максимальный элемент массива?... Нахождение максимального элемента массива Из этой небольшой заметки вы узнаете, как найти максимальный элемент массива с помощью языка c# Вообще д...
c# Как удалить пустые элементы массива?... В этой небольшой статье рассмотрим на простом примере, как удалить пустые элементы массива. Например, создадим одномерный массив, который содер...
Как узнать, чему равна сумма элементов массива?... Как получить сумму элементов массива в языке c# При решении различных задач, очень часто требуется узнать, чему равна сумма элементов массива или обо...