0 sur 2 ont trouvé cela utile - Évaluez ce sujet

Tableaux en escalier dans Visual Basic

Un tableau dont chaque élément est lui-même un tableau est appelé un tableau de tableaux ou un tableau en escalier. Notez qu'avoir des tableaux comme éléments n'est pas la même chose qu'un tableau multidimensionnel qui possède plusieurs index sur un tableau seul.

Signification d'« en escalier »

La structure des données de votre application est parfois à deux dimensions, mais pas rectangulaire. Vous pouvez par exemple posséder un tableau des mois dont chacun des éléments est un tableau des jours. Puisque des mois distincts possèdent un nombre de jours différent, les éléments ne constituent pas un tableau rectangulaire à deux dimensions. Dans ce cas, vous pouvez utiliser un tableau en escalier au lieu d'un tableau multidimensionnel.

Exemple

L'exemple suivant déclare une variable tableau pour stocker un tableau de tableaux avec les éléments du Double, type de données (Visual Basic). Chaque élément du tableau sales est lui-même un tableau qui représente un mois. Chaque tableau de mois stocke des valeurs pour chaque jour de ce mois.

Dim sales()() As Double = New Double(11)() {}
Dim month As Integer
Dim days As Integer
For month = 0 To 11 
    days = DateTime.DaysInMonth(Year(Now), month + 1)
    sales(month) = New Double(days - 1) {}
Next month

La clause New dans la déclaration de sales attribue à la variable tableau la valeur d'un tableau de 12 éléments, chaque élément correspondant à un type Double(), un tableau d'éléments Double. La boucle For détermine ensuite le nombre de jours de chaque mois de cette année (Year(Now)) et définit l'élément correspondant de sales à un tableau Double de taille appropriée.

Dans l'exemple précédent, le tableau en escalier enregistre sept éléments (six dans une année bissextile) par rapport à un tableau à deux dimensions. Dans un cas plus extrême, les économies de mémoire pourraient être importantes.

Voir aussi

Cela vous a-t-il été utile ?
(1500 caractères restants)
Contenu de la communauté Ajouter
Annotations FAQ