Différence clé - Collection générique vs non générique en C #
Une collection générique est une classe qui fournit la sécurité de type sans avoir à dériver d'un type de collection de base et à implémenter des membres spécifiques au 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. La principale différence entre une collection générique et non générique en C # est qu'une collection générique est fortement typée alors qu'une collection non générique n'est pas fortement typée.
CONTENU
1. Présentation et différence clé
2. Qu'est-ce qu'une collection générique en C #
3. Qu'est-ce qu'une collection non générique en C #
4. Similitudes entre une collection générique et non générique en C #
5. Comparaison côte à côte - Collection générique vs non générique en C # sous forme tabulaire
6. Résumé
Qu'est-ce qu'une collection générique en C #?
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 taper les transtyper dans le type de données correct. 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 les éléments en interne dans des tableaux de leurs types réels. Par conséquent, la fonte de type n'est pas requise. Ils peuvent être utilisés pour stocker des éléments du ou des types spécifiés. Certaines classes de collection génériques sont List, Dictionary, SortedList, HashSet, Queue, Stack.
La GenericList 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 y a une instruction comme suit, tous les éléments qui peuvent être stockés dans la liste1 doivent être des entiers, Liste liste1 - nouvelle liste ();
Le dictionnaire générique en C # est une collection de clés et de valeurs. Lorsqu'il existe une instruction comme suit, l'objet dictionary1 peut stocker des clés de type int et des valeurs de type chaîne.
Dictionnaire dictionary1 = new Dictionary ();
Une collection SortedList générique stocke par défaut les paires de clés et de valeurs dans l'ordre croissant des clés. L'exemple ci-dessous stocke la clé de type int et la valeur de type chaîne.
SortedList s0 = new SortedList ();
Ce ne sont que quelques exemples de Generic Collection en C #. Ces collections peuvent stocker plusieurs valeurs des types de données spécifiés. Donc, ils sont fortement typés.
Qu'est-ce qu'une collection non générique en C #?
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. Il existe des classes en C # qui 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 de manière dynamique.
Certaines classes de collection non génériques sont ArrayList, SortedList, Stack, Queue et HashTable. Chaque classe de collection implémente l'interface IEnumerable. Il aide à parcourir les éléments des éléments de la collection à l'aide de 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 initialisé à 10 éléments mais ne stocke que 5 éléments, le reste n'est pas utilisé. Par conséquent, un tableau est fixe. Dans une ArrayList, il est possible d'ajouter ou de supprimer des éléments en fonction de l'index. Il permet une allocation de mémoire dynamique. La méthode de tri peut être utilisée pour trier les éléments par ordre croissant.
Le HashTable est utilisé pour représenter une collection de paires valeur / clé. 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 aux éléments. La file d'attente est utilisée pour l'accès premier entré, premier sorti des éléments. Ce sont quelques-unes des collections non génériques prises en charge par C #. Ces collections peuvent stocker des éléments de différents types.
Quelle est la similitude entre une collection générique et non générique en C #?
Les collections générique et non générique peuvent être utilisées pour stocker plusieurs éléments en C #
Quelle est la différence entre une collection générique et non générique en C #?
Diff article au milieu avant la table
Collection générique vs non générique en C # |
|
Une collection générique est une classe qui fournit la sécurité de type sans avoir à dériver d'un type de collection de base et à implémenter des membres spécifiques au 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 se trouvent dans System. Collections. Espace de noms génériques. | Les classes de collection non génériques se trouvent dans System. Espace de noms des collections. |
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 les éléments en interne dans des tableaux de leurs types réels. | Les collections non génériques stockent des éléments en interne dans des tableaux d'objets afin de pouvoir stocker tout type de données. |
Résumé - Collection générique vs non générique en C #
Cet article décrit la différence entre une collection générique et non générique en C #. La différence entre une collection générique et non générique est qu'une collection générique est fortement typée alors qu'une collection non générique n'est pas fortement typée.