Notes
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Vous initialisez une variable de tableau en incluant un littéral de tableau dans une New
clause et en spécifiant les valeurs initiales du tableau. Vous pouvez spécifier le type ou l’autoriser à être déduit des valeurs du littéral du tableau. Pour plus d’informations sur la façon dont le type est déduit, consultez « Remplissage d’un tableau avec des valeurs initiales » dans les tableaux.
Pour initialiser une variable de tableau à l’aide d’un littéral de tableau
Dans la
New
clause, ou lorsque vous affectez la valeur du tableau, fournissez les valeurs d’élément à l’intérieur des accolades ({}
). L’exemple suivant montre plusieurs façons de déclarer, de créer et d’initialiser une variable pour contenir un tableau qui a des éléments de typeChar
.' The following five lines of code create the same array. ' Preferred syntaxes are on the lines with chars1 and chars2. Dim chars1 = {"%"c, "&"c, "@"c} Dim chars2 As Char() = {"%"c, "&"c, "@"c} Dim chars3() As Char = {"%"c, "&"c, "@"c} Dim chars4 As Char() = New Char(2) {"%"c, "&"c, "@"c} Dim chars5() As Char = New Char(2) {"%"c, "&"c, "@"c}
Une fois chaque instruction exécutée, le tableau créé a une longueur de 3, avec des éléments à l’index 0 à l’index 2 contenant les valeurs initiales. Si vous fournissez à la fois la limite supérieure et les valeurs, vous devez inclure une valeur pour chaque élément de l’index 0 à la limite supérieure.
Notez que vous n’avez pas besoin de spécifier la limite supérieure de l’index si vous fournissez des valeurs d’élément dans un littéral de tableau. Si aucune limite supérieure n’est spécifiée, la taille du tableau est déduite en fonction du nombre de valeurs dans le littéral du tableau.
Pour initialiser une variable de tableau multidimensionnelle à l’aide de littéraux de tableau
Imbriquez les valeurs à l’intérieur des accolades (
{}
) dans les accolades. Vérifiez que les littéraux de tableau imbriqués déduits en tant que tableaux du même type et de la même longueur. L’exemple de code suivant montre plusieurs exemples d’initialisation de tableaux multidimensionnels.Dim numbers = {{1, 2}, {3, 4}, {5, 6}} Dim customerData = {{"City Power & Light", "http://www.cpandl.com/"}, {"Wide World Importers", "http://wideworldimporters.com"}, {"Lucerne Publishing", "http://www.lucernepublishing.com"}} ' You can nest array literals to create arrays that have more than two ' dimensions. Dim twoSidedCube = {{{1, 2}, {3, 4}}, {{5, 6}, {7, 8}}}
Vous pouvez spécifier explicitement les limites du tableau, ou les laisser sortir et faire en sorte que le compilateur déduit les limites du tableau en fonction des valeurs du littéral du tableau. Si vous fournissez les limites supérieures et les valeurs, vous devez inclure une valeur pour chaque élément de l’index 0 à la limite supérieure de chaque dimension. L’exemple suivant montre plusieurs façons de déclarer, de créer et d’initialiser une variable pour contenir un tableau à deux dimensions qui a des éléments de type
Short
' The following five lines of code create the same array. ' Preferred syntaxes are on the lines with scores1 and scores2. Dim scores1 = {{10S, 10S, 10S}, {10S, 10S, 10S}} Dim scores2 As Short(,) = {{10, 10, 10}, {10, 10, 10}} Dim scores3(,) As Short = {{10, 10, 10}, {10, 10, 10}} Dim scores4 As Short(,) = New Short(1, 2) {{10, 10, 10}, {10, 10, 10}} Dim scores5(,) As Short = New Short(1, 2) {{10, 10, 10}, {10, 10, 10}}
Une fois chaque instruction exécutée, le tableau créé contient six éléments initialisés qui ont des
(0,0)
index, ,(0,1)
,(0,2)
,(1,0)
,(1,1)
et(1,2)
. Chaque emplacement du tableau contient la valeur10
.L’exemple suivant itère dans un tableau multidimensionnel. Dans une application console Windows écrite en Visual Basic, collez le code à l’intérieur de la
Sub Main()
méthode. Les derniers commentaires affichent la sortie.Dim numbers = {{1, 2}, {3, 4}, {5, 6}} ' Iterate through the array. For index0 = 0 To numbers.GetUpperBound(0) For index1 = 0 To numbers.GetUpperBound(1) Debug.Write(numbers(index0, index1).ToString & " ") Next Debug.WriteLine("") Next ' Output ' 1 2 ' 3 4 ' 5 6
Pour initialiser une variable de tableau en jaquet à l’aide de littéraux de tableau
Imbriquer les valeurs d’objet à l’intérieur des accolades (
{}
). Bien que vous puissiez également imbriquer des littéraux de tableau qui spécifient des tableaux de longueurs différentes, dans le cas d’un tableau en jaquet, assurez-vous que les littéraux de tableau imbriqués sont placés entre parenthèses (()
). Les parenthèses forcent l’évaluation des littéraux de tableau imbriqués et les tableaux résultants sont utilisés comme valeurs initiales du tableau en jaquet. L’exemple de code suivant montre deux exemples d’initialisation de tableau en jaquet.' Create a jagged array of arrays that have different lengths. Dim jaggedNumbers = {({1, 2, 3}), ({4, 5}), ({6}), ({7})} ' Create a jagged array of Byte arrays. Dim images = {New Byte() {}, New Byte() {}, New Byte() {}}
L’exemple suivant itère dans un tableau en jaquet. Dans une application console Windows écrite en Visual Basic, collez le code à l’intérieur de la
Sub Main()
méthode. Les derniers commentaires du code affichent la sortie.' Create a jagged array of arrays that have different lengths. Dim jaggedNumbers = {({1, 2, 3}), ({4, 5}), ({6}), ({7})} For indexA = 0 To jaggedNumbers.Length - 1 For indexB = 0 To jaggedNumbers(indexA).Length - 1 Debug.Write(jaggedNumbers(indexA)(indexB) & " ") Next Debug.WriteLine("") Next ' Output: ' 1 2 3 ' 4 5 ' 6 ' 7