MyTetra Share
Делитесь знаниями!
Удаление пустых элементов из массива
Время создания: 29.09.2019 23:08
Текстовые метки: array, массивы, удалить пустые элементы, удалить пустые элементы массива
Раздел: Компьютер - C#
Запись: Kozlov-AE/Tetra/master/base/1569787680b3y6x0dkrz/text.html на raw.githubusercontent.com

В этой небольшой статье рассмотрим на простом примере, как удалить пустые элементы массива.

Например, создадим одномерный массив, который содержит четыре элемента:


string [] fruits = {"арбуз", "дыня", null, null};


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

Но, мне надо удалить пустые элементы в массиве, как это сделать?

 

Удаление пустых элементов в массиве C#

Например, вы можете поступить следующим образом:


fruits = fruits.Where(x => x != null).ToArray();

//Результат: fruits = {"арбуз", "дыня"};


В данном примере создаётся иллюзия, как будто бы мы удаляем пустые элементы массива, но на самом деле, это не так.

Сначала, с помощью метода Where, мы отбираем или получаем все не пустые значения массива и помещаем их в коллекцию типа IEnumerable<string>.

А затем, с помощью метода ToArray, создаётся новый массив, в который копируются все отобранные значения из полученной ранее коллекции.

При этом старый массив (сам объект) ещё какое-то время остается в памяти, дожидаясь сборщика мусора, и он всё так же по-прежнему содержит пустые элементы.

Так же в этом разделе:
 
MyTetra Share v.0.59
Яндекс индекс цитирования