C# Language Inizializzatori di raccolta

Esempio

Inizializza un tipo di raccolta con valori:

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

Gli inizializzatori della raccolta sono zucchero sintattico per le chiamate Add() . Sopra il codice è equivalente a:

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

Si noti che l'intializzazione viene eseguita atomicamente utilizzando una variabile temporanea, per evitare condizioni di competizione.

Per i tipi che offrono più parametri nel loro metodo Add() , racchiudi gli argomenti separati da virgola in parentesi graffe:

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

Questo è equivalente a:

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