Я бы не стал говорить, что они устарели или будут удалены в ближайшее время. Это правда, что вам следует избегать использования неуниверсальных коллекций, если у вас нет причины не использовать универсальную версию. Тысячи строк устаревшего (не очень устаревшего) кода все еще существуют (и будут в течение многих лет), которые поддерживают неуниверсальные коллекции, такие как ArrayLists. Поскольку это были единственные коллекции в .NET 1.0 и 1.1, они широко использовались (и злоупотребляли) в течение года.
Мне все еще иногда приходится взаимодействовать со старым устройством отображения O / R, написанным на .NET 1.1, которое возвращает объекты IList. У меня есть метод, который выполняет преобразование в общий список ‹>, что неэффективно, но так оно и есть.
А если вам нужно хранить разные объекты в одном массиве (странно, но возможно), вам понадобится неуниверсальная коллекция. Штраф за бокс и распаковку - это то, что вам все равно придется заплатить.
Не бойтесь использовать их, если чувствуете, что должны.
person
Martin Marconcini
schedule
11.09.2008