C# Language Inicializadores de colección


Ejemplo

Inicializar un tipo de colección con valores:

var stringList = new List<string>
{
    "foo",
    "bar",
};

Los inicializadores de colección son azúcar sintáctica para llamadas Add() . El código anterior es equivalente a:

var temp = new List<string>();
temp.Add("foo");
temp.Add("bar");
var stringList = temp;

Tenga en cuenta que la inicialización se realiza de forma atómica utilizando una variable temporal, para evitar las condiciones de carrera.

Para los tipos que ofrecen múltiples parámetros en su método Add() , incluya los argumentos separados por comas entre llaves:

var numberDictionary = new Dictionary<int, string>
{
    { 1, "One" },
    { 2, "Two" },
};

Esto es equivalente a:

var temp = new Dictionary<int, string>();
temp.Add(1, "One");
temp.Add(2, "Two");
var numberDictionarynumberDictionary = temp;