Une collection générique est une classe qui fournit une sécurité de type sans avoir à dériver d'un type de collection de base et à implémenter des membres spécifiques à un type. Une collection non générique est une classe spécialisée pour le stockage et la récupération de données, qui prend en charge les piles, les files d'attente, les listes et les tables de hachage. le différence clé entre Collection générique et non générique en C # est que une collection générique est fortement typée, alors qu'une collection non générique n'est pas fortement typée.
1. Vue d'ensemble et différence clé
2. Qu'est-ce que la collection générique en C #?
3. Qu'est-ce qu'une collection non générique en C #?
4. Similitudes entre les collections génériques et non génériques en C #
5. Comparaison côte à côte - Collection générique et non générique en C # sous forme tabulaire
6. Résumé
Les collections non génériques telles que ArrayList, Queue, Stack, etc. peuvent stocker des éléments de différents types de données. Lors de l’obtention des éléments, le programmeur doit les attribuer au type de données approprié. Sinon, cela peut provoquer une exception d'exécution. Les classes de collection génériques peuvent être utilisées pour résoudre ce problème. Les collections génériques stockent des éléments en interne dans des tableaux de leurs types actuels. Par conséquent, le transtypage n'est pas requis. Ils peuvent être utilisés pour stocker des éléments du type ou des types spécifiés. Certaines classes de la collection générique sont List, Dictionary, SortedList, HashSet, Queue, Stack. .
La liste générique contient des éléments du type spécifié. Il peut augmenter la liste en conséquence lors de l'ajout d'éléments. Lorsqu'il existe une instruction comme suit, tous les éléments pouvant être stockés dans la liste1 doivent être des entiers.,
List list1 - nouvelle liste ();
Le dictionnaire générique en C # est un ensemble de clés et de valeurs. Lorsqu'il existe une déclaration comme suit, l'objet dictionary1 peut stocker des clés de type int et des valeurs de type chaîne.
Dictionary dictionary1 = nouveau dictionnaire ();
Une collection Generic SortedList stocke les paires clé / valeur dans l'ordre croissant des clés par défaut. L'exemple ci-dessous stocke la clé de type int et la valeur du type de chaîne.
SortedList s0 = new SortedList ();
Voici quelques exemples pour Collection générique en C #. Ces collections peuvent stocker plusieurs valeurs des types de données spécifiés. Donc, ils sont fortement typés.
Les tableaux peuvent être utilisés pour stocker plusieurs éléments. Un inconvénient est qu'il peut stocker des éléments du même type de données. Certaines classes en C # peuvent être utilisées pour stocker de nombreuses valeurs ou objets appelés collections. Les collections aident à stocker, mettre à jour, supprimer, rechercher, trier des objets. La taille de la collection peut être augmentée ou diminuée dynamiquement.
Certaines classes de la collection non génériques sont ArrayList, SortedList, Stack, Queue et HashTable. Chaque classe de collection implémente l'interface IEnumerable. Il est utile de parcourir les éléments des éléments de la collection en utilisant la boucle foreach.
ArrayList est une alternative à un tableau. S'il existe un tableau pouvant stocker 10 éléments, il ne peut pas stocker 20 éléments. Si le tableau est initialisé à 10 éléments mais ne stocke que 5 éléments, le reste est non utilisé. Par conséquent, un tableau est corrigé. Dans une ArrayList, il est possible d'ajouter ou de supprimer des éléments en fonction de l'index. Il permet une allocation dynamique de la mémoire. La méthode de tri peut être utilisée pour trier les éléments par ordre croissant.
La table de hachage est utilisée pour représenter une collection de paires clé-valeur. Ils sont organisés en fonction du hashCode de la clé. Par conséquent, chaque élément a une paire clé-valeur. La clé peut être utilisée pour accéder à un élément particulier de la collection. La pile représente le dernier accès, premier sorti, des éléments. La file d'attente est utilisée pour l'accès des éléments à la première entrée. Ce sont certaines des collections non génériques prises en charge par C #. Ces collections peuvent stocker des éléments de différents types.
Collection générique vs non générique en C # | |
Une collection générique est une classe qui fournit une sécurité de type sans avoir à dériver d'un type de collection de base et à implémenter des membres spécifiques à un type.. | Une collection non générique est une classe spécialisée pour le stockage et la récupération de données, qui prend en charge les piles, les files d'attente, les listes et les tables de hachage.. |
Espace de noms | |
Les classes de la collection générique sont dans le système. Collections. Espace de noms génériques. | Les classes de collection non génériques sont dans le système. Collections namespace. |
Type | |
Une collection générique est fortement typée. | Une collection non générique n'est pas fortement typée. |
Stockage des éléments | |
Les collections génériques stockent des éléments en interne dans des tableaux de leurs types actuels. | Les collections non génériques stockent les éléments en interne dans des tableaux d’objets afin de pouvoir stocker tout type de données.. |
Cet article traite de la différence entre les collections génériques et non génériques en C #. La différence entre une collection générique et non générique réside dans le fait qu'une collection générique est fortement typée, alors qu'une collection non générique n'est pas fortement typée.
1. «Quand utiliser les collections génériques». Microsoft Docs. Disponible ici
2. «Collection générique en C #». TutorialsTeacher.com. Disponible ici
3. “Collection C #:” Collection en C #, TutorialsTeacher.com. Disponible ici
4. "Collections C #.", Tutoriels Point, 19 mars 2018. Disponible ici
1.'Logo C Sharp'By Microsoft , (Domaine public) via Wikimedia Commons