Comment : initialiser une variable tableau en Visual Basic
À l'aide d'un littéral de tableau, vous pouvez remplir un tableau avec des valeurs initiales lorsque vous le créez.Vous pouvez inclure le littéral de tableau dans le cadre de la clause d' New et pour spécifier le type ou le pour permettre à déduire des valeurs dans le littéral de 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 Tableaux dans Visual Basic.
Pour initialiser une variable tableau à l'aide d'un littéral de tableau
Dans la clause New, ou lorsque vous assignez la valeur de tableau, fournissez les valeurs d'élément en les plaçant entre accolades ({}).L'exemple suivant illustre plusieurs méthodes permettant de déclarer, de créer et d'initialiser une variable destinée à contenir un tableau qui comporte des éléments de type Char.
' 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}
Après chaque instruction exécute, le tableau créée a une longueur égale à 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 jusqu'à la limite supérieure.
Notez que vous n'êtes pas obligé de spécifier la limite supérieure d'index si vous fournissez des valeurs d'éléments dans un littéral de tableau.Si aucune limite supérieure n'est spécifiée, la taille du tableau est déduite selon le nombre de valeurs présentes dans le littéral de tableau.
Pour initialiser une variable tableau multidimensionnel à l'aide des littéraux de tableaux
Imbriquez des valeurs entre accolades ({}) au sein d'accolades.Veillez à ce que les littéraux de tableaux imbriqués soient tous déduits en tant que tableaux du même type et de même longueur.L'exemple de code suivant illustre plusieurs méthodes d'initialisation de tableau multidimensionnel.
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 d'index de tableau ou les ignorer et laisser le compilateur les déduire selon les valeurs présentes dans le littéral de tableau.Si vous fournissez à la fois les limites supérieures et les valeurs, vous devez inclure une valeur pour chaque élément de l'index 0 jusqu'à la limite supérieure dans chaque dimension.L'exemple suivant illustre plusieurs méthodes permettant de déclarer, de créer et d'initialiser une variable destinée à contenir un tableau à deux dimensions qui comporte 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}}
Après chaque instruction exécute, le tableau créé contient six éléments initialisés ayant des index (0,0), (0,1), (0,2), (1,0), (1,1), et (1,2).Chaque emplacement de tableau contient la valeur 10.
L'exemple suivant effectue une itération au sein d'un tableau multidimensionnel.Dans Visual Basic Console Application, collez le code dans la méthode d' Sub Main() .Les commentaires derniers indiquent 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 tableau en escalier à l'aide des littéraux de tableaux
Imbriquez des valeurs d'objet entre accolades ({}).Bien que vous puissiez également imbriquer des littéraux de tableaux qui spécifient des tableaux de longueurs différentes, dans le cas d'un tableau en escalier, veillez à ce que les littéraux de tableaux imbriqués soient placés entre parenthèses (()).Les parenthèses forcent l'évaluation des littéraux de tableaux imbriqués et les tableaux obtenus sont utilisés comme valeurs initiales du tableau en escalier.L'exemple de code suivant illustre deux méthodes d'initialisation de tableau en escalier.
' 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 effectue une itération au sein d'un tableau en escalier.Collez le code dans la méthode d' Sub Main()dans Visual Basic Console Application.Les commentaires dans le code indiquent que la sortie doit être.
' 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
Voir aussi
Tâches
Dépannage des tableaux (Visual Basic)