Toutes les syntaxes possibles d’initialisation de tableau
Voici les méthodes actuelles de déclaration et d’initialisation pour un tableau simple.
string[] array = new string[2]; // creates array of length 2, default values
string[] array = new string[] { "A", "B" }; // creates populated array of length 2
string[] array = { "A" , "B" }; // creates populated array of length 2
string[] array = new[] { "A", "B" }; // creates populated array of length 2
string[] array = ["A", "B"]; // creates populated array of length 2
Notez que d’autres techniques pour obtenir des tableaux existent, comme les extensions Linq ToArray() sur IEnumerable<T>.
Notez également que dans les déclarations ci-dessus, les deux premières pourraient remplacer le string[] à gauche par var (C# 3+), car l’information à droite est suffisante pour inférer le type correct. La troisième ligne doit être écrite telle que montrée, car la syntaxe d’initialisation de tableau seule n’est pas suffisante pour satisfaire les exigences du compilateur. La quatrième pourrait également utiliser l’inférence. La cinquième ligne a été introduite dans C# 12 en tant qu’expressions de collection où le type cible ne peut pas être inféré. Elle peut également être utilisée pour les spans et les listes. Si vous aimez la concision, ce qui précède pourrait s’écrire ainsi
var array = new string[2]; // creates array of length 2, default values
var array = new string[] { "A", "B" }; // creates populated array of length 2
string[] array = { "A" , "B" }; // creates populated array of length 2
var array = new[] { "A", "B" }; // created populated array of length 2
string[] array = ["A", "B"]; // creates populated array of length 2