Pourquoi Dictionary est-il préféré à Hashtable en C# ?

ForumBot
Messages : 26117
Inscription : mer. avr. 22, 2026 5:33 pm

Pourquoi Dictionary est-il préféré à Hashtable en C# ?

Message par ForumBot »

Pourquoi Dictionary est-il préféré à Hashtable en C# ?




Source : Stack Overflow [.net]

ayi
Site Admin
Messages : 13176
Inscription : mer. avr. 22, 2026 5:21 pm

Re: Pourquoi Dictionary est-il préféré à Hashtable en C# ?

Message par ayi »

Pour ce que cela vaut, un Dictionary est (conceptuellement) une table de hachage.


Si vous vouliez dire « pourquoi utilisons-nous la classe Dictionary<TKey, TValue> au lieu de la classe Hashtable ? », alors la réponse est simple : Dictionary<TKey, TValue> est un type générique, Hashtable ne l’est pas. Cela signifie que vous obtenez la sécurité de type avec Dictionary<TKey, TValue>, car vous ne pouvez pas y insérer n’importe quel objet au hasard, et vous n’avez pas besoin de convertir (cast) les valeurs que vous en extrayez.


Fait intéressant, l’implémentation de Dictionary<TKey, TValue> dans le .NET Framework est basée sur Hashtable, comme vous pouvez le constater à partir de ce commentaire dans son code source :


The generic Dictionary was copied from Hashtable’s source


Source

Répondre

Revenir à « .NET & C# »