Partager via


Collections et structures de données

Mise à jour : novembre 2007

Les données étroitement liées peuvent être gérées plus efficacement quand elles sont regroupées pour former une collection. Au lieu d'écrire un code distinct pour gérer chaque objet, vous pouvez utiliser le même code pour traiter tous les éléments d'une collection.

Utilisez la classe Array pour gérer une collection et les classes System.Collections pour ajouter, supprimer et modifier des éléments individuels d'une collection ou d'une série d'éléments. Vous pouvez même copier une collection complète dans une autre collection.

Certaines classes Collections ont des fonctionnalités de tri, et la plupart sont indexées. La gestion de mémoire est automatique et la capacité d'une collection est étendue si nécessaire. La synchronisation garantit la sécurité des threads lors de l'accès à des membres de la collection. Certaines classes Collections peuvent générer des wrappers qui rendent la collection en lecture seule ou de taille fixe. Une classe Collections peut générer son propre énumérateur pour faciliter l'itération sur les éléments.

Dans .NET Framework version 2.0, les classes de collections génériques fournissent de nouvelles fonctionnalités et facilitent la création de collections fortement typées. Consultez les espaces de noms System.Collections.Generic et System.Collections.ObjectModel.

La fonctionnalité LINQ to Objects permet d'utiliser des requêtes LINQ pour accéder aux objets en mémoire tant que le type d'objet implémente IEnumerable ou IEnumerable<T>. Les requêtes LINQ fournissent un modèle commun pour accéder aux données, sont généralement plus concises et lisibles que les boucles foreach standard et intègrent des fonctions de filtrage, de classement et de regroupement. Les requêtes LINQ peuvent également améliorer les performances. Pour plus d'informations, consultez LINQ to Objects.

Dans cette section

Référence

  • Array
    Décrit les principales fonctionnalités de la classe Array qui fournit des méthodes pour créer, manipuler, rechercher et trier des tableaux, faisant ainsi office de classe de base pour tous les tableaux du Common Language Runtime.

  • System.Collections
    Fournit une documentation de référence à l'espace de noms System.Collections qui contient des interfaces et des classes qui définissent différentes collections d'objets.

  • System.Collections.Generic
    Fournit une documentation de référence à l'espace de noms System.Collections.Generic qui contient des interfaces et des classes qui définissent des collections génériques.

  • System.Collections.Specialized
    Fournit une documentation de référence à l'espace de noms System.Collections.Specialized qui contient des collections spécialisées et fortement typées.