В чем разница между System.Collections, System.Collections.Specialized и System.Collections.Generic в .NET? - PullRequest
2 голосов
/ 11 августа 2009

В чем основная разница между тремя? Прямо сейчас я хочу создать пару ключ / значение, используя как строку / строку соответственно. Кажется, у всех трех есть варианты, которые я могу использовать.

Редактировать: я просто хочу создать простую хеш-таблицу - ничего сложного.

Ответы [ 3 ]

4 голосов
/ 11 августа 2009
  • System.Collections: контейнеры, в которых хранятся ссылки на System.Object типы
  • System.Collections.Specialized: специализированные версии System.Collections для типов, отличных от System.Object (отдельные типы коллекций по специализации, каждый хранится в сборке)
  • System.Collections.Generic: замена двух вышеупомянутых, поскольку среда выполнения определит, как создать коллекцию для типа, который вы хотите сохранить в нем (один тип коллекции для всех специализаций).
4 голосов
/ 11 августа 2009

Родовые коллекции практически полностью заменяют базовые коллекции и Коллекции. Специализированные. Чтобы действительно дать лучшую рекомендацию, нам нужно знать больше о том, что вы хотите сделать, но шансы вы хотите System.Collections.Generic.Dictionary.

1 голос
/ 11 августа 2009

Ответ очень зависит от вашего использования. Не зная подробностей, я бы сказал, посмотрите на System.Collections.Specialized.NameValueCollection для строки, строки. System.Collections.Specialized & System.Collections.Generic строго типизированы, я думаю, что System.Collections просто перенесен из .NET 1.1.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...