it-swarm.com.ru

Преобразовать строку в список <string> в одну строку?

У меня есть строка:

var names = "Brian,Joe,Chris";

Есть ли способ преобразовать это в List<string>, разделенный , в одной строке?

78
Brian David Berman
List<string> result = names.Split(new char[] { ',' }).ToList();

Или даже чище по предложению Дэна:

List<string> result = names.Split(',').ToList();
158
Matt Greer

У List<T> есть конструктор, который принимает IEnumerable<T>:

List<string> listOfNames = new List<string>(names.Split(','));

36
Nathan Anderson

Я предпочитаю это, потому что это предотвращает один список элементов с пустым элементом, если ваша исходная строка пуста:

  IEnumerable<string> namesList = 
      !string.isNullOrEmpty(names) ? names.Split(',') : Enumerable.Empty<string>();
2
KingOfHypocrites

Если у вас уже есть список и вы хотите добавить значения из строки с разделителями, вы можете использовать AddRange или InsertRange . Например:

existingList.AddRange(names.Split(','));
0
c32hedge