Удалите пустые значения в массиве с помощью С#

Есть ли какой-либо метод, который удаляет пустые индексы из массива например

string[] test={"1","","2","","3"};

в этом случае существует ли какой-либо метод для удаления пустого индекса из массива с помощью С# в конце я хочу получить массив в этом формате test={"1","2","3"};, что означает, что два индекса удаляются из массива, и, наконец, я получил 3 индекса Я не являюсь точным кодом для массива, это подсказка, которую я хочу сделать

Ответ 1

Если вы используете .NET 3.5+, вы можете использовать linq.

test = test.Where(x => !string.IsNullOrEmpty(x)).ToArray();

Ответ 2

Вы можете использовать Linq, если вы используете .NET 3.5 или новее:

 test = test.Where(x => !string.IsNullOrEmpty(x)).ToArray();

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

var temp = new List<string>();
foreach (var s in test)
{
    if (!string.IsNullOrEmpty(s))
        temp.Add(s);
}
test = temp.ToArray();

Ответ 3

Я пишу код ниже, чтобы удалить пустое значение в строке массива.

string[] test={"1","","2","","3"};
test= test.Except(new List<string> { string.Empty }).ToArray();

Ответ 4

Я предпочитаю использовать два параметра: пробелы и пустое поле:

test = test.Where(x => !string.IsNullOrEmpty(x)).ToArray();
test = test.Where(x => !string.IsNullOrWhiteSpace(x)).ToArray();