Partager via


Comment : créer un tableau avec des types d'élément mixtes

Mise à jour : novembre 2007

Vous devez déclarer uniquement un type de données pour un tableau, et tous ses éléments doivent correspondre à ce type de données. Normalement cette limitation est souhaitable puisque tous les éléments sont étroitement liés entre eux et possèdent des valeurs de types semblables. Toutefois, les éléments ne sont pas toujours étroitement liés entre eux ou n'ont pas de valeurs semblables. Dans ce cas, vous pouvez déclarer les éléments de tableau pour qu'ils soient de Object, type de données et les éléments individuels peuvent pointer sur différents types de données, tels que des nombres, des caractères, des chaînes, des objets et d'autres tableaux.

Pour créer un tableau avec des éléments de types de données différents

  • Déclarez le tableau comme Object. L'exemple suivant déclare une variable destinée à contenir un tableau d'éléments Object, crée le tableau et l'assigne à la variable.

    Dim mixedTypes As Object() = New Object() {}
    

    Lorsque vous utilisez le type de données Object, n'oubliez pas que les performances ne sont pas aussi efficaces que lorsque vous utilisez un type de données plus spécifique. En effet, l'exécution doit convertir les données entre son type de données naturel et Object à l'aide d'opérations appelées des conversion boxing et unboxing. Ce traitement supplémentaire peut nuire à vos performances s'il a lieu souvent.

Pour accéder aux éléments de types de données différents dans un tableau

  • Lisez ou écrivez les éléments normalement. Vous pouvez stocker et extraire un élément de n'importe quel type de données dans un tableau Object.

    L'exemple suivant montre comment insérer des informations de types de données différents dans un tableau Object. Il stocke des informations d'employé dans le tableau dans la variable employeeData.

    Dim employeeData(3) As Object
    employeeData(0) = "Alex Hankin"
    employeeData(1) = "4242 Maple Street"
    employeeData(2) = 48
    employeeData(3) = #8/23/1956#
    

    Pour extraire des informations de types de données différents d'un tableau Object, vous pouvez convertir un élément en type de données approprié, comme le montre l'exemple suivant.

    Dim age As Integer = CInt(employeeData(2))
    Dim birthDate as Date = CDate(employeeData(3))
    

Dans une situation où les éléments ne sont pas semblables ou ne sont pas liés entre eux, une autre possibilité consiste à les mettre dans une collection au lieu d'un tableau Object. Pour plus d'informations, consultez Collections en tant qu'alternative aux tableaux.

Voir aussi

Tâches

Comment : déclarer une variable tableau

Comment : créer un tableau

Comment : créer un tableau à plusieurs dimensions

Comment : créer un tableau de tableaux

Comment : créer un tableau sans éléments

Comment : initialiser une variable tableau

Dépannage des tableaux

Concepts

Vue d'ensemble des tableaux dans Visual Basic

Collections en tant qu'alternative aux tableaux

Autres ressources

Tableaux dans Visual Basic