Список. AddRange встраивают объявление

Это может казаться легким вопросом, но не мне, также поиск ни к чему не привел. Вплоть до сих пор единственное программирование .NET, которое я сделал, с Призмой Delphi. С Призмой я могу сделать вещи как:

var l := new List<String>(['A','B','C']);

или

var l := new List<String>;
l.AddRange(['A','B','C'];

но могу я делать подобную вещь в C# или делать, я должен сделать это как:

var a = new String[] {"A","B","C"};
var l = new List<String>(a);
7
задан Andreas Niedermair 23 June 2015 в 07:12
поделиться

4 ответа

 var l=new List<String>() {"A","B","C"};  

это будет работать

23
ответ дан 6 December 2019 в 06:24
поделиться

Вы можете использовать Collection Initializers для достижения желаемого результата.

1
ответ дан 6 December 2019 в 06:24
поделиться

collection initializer:

var list = new List<string>
{
    "A",
    "B",
    "C"
};

или правильный ctor (смешанный с collection initializer):

var list = new List<string>(new [] { "A", "B", "C" });
  • msdn for ctor infos
  • msdn for collection initializer
4
ответ дан 6 December 2019 в 06:24
поделиться

Как упоминалось выше, используйте инициализаторы коллекций. Кроме того, если вы хотите преобразовать string[] в List , вы можете использовать метод расширения ToList() в пространстве имен System.Linq, как показано ниже:

string[] s = { "3", "4", "4"};
List<string> z = s.ToList();
0
ответ дан 6 December 2019 в 06:24
поделиться
Другие вопросы по тегам:

Похожие вопросы: