c # ¿Cuándo debería usar List y cuándo debería usar el arraylist?

Como dice el título, ¿cuándo debería usar List y cuándo debería usar ArrayList ?

Gracias

El momento principal para usar ArrayList es en .NET 1.1

Aparte de eso, List todo el camino (para su T local) …

Para aquellos casos (raros) en los que no se conoce el tipo por adelantado (y no se pueden usar generics), incluso List es más útil que ArrayList (IMO).

Siempre debe usar List (introducido en .NET 2.0 con generics) ya que es TypeSafe y más rápido que ArrayList (no es necesario boxing / unboxing).

El único caso en el que podría pensar que una ArrayList podría ser útil es si necesita interactuar con cosas viejas (.NET 1.1) o necesita una matriz de objetos de diferente tipo y carga todo como objeto, pero podría hacer lo último. con List que generalmente es mejor.

Como List es una clase genérica, tendería a usar siempre List.

ArrayList es una clase de .NET 1.x (aún disponible y válida), pero no es ‘tipeado’ / genérico, por lo que tendrá que convertir elementos de ‘objeto’ al tipo deseado; mientras que al usar List, no tienes que hacer eso.

Use la lista donde sea posible. No puedo ver ningún uso de ArrayList cuando existe una lista de alto rendimiento.

ArrayList es una estructura de datos .NET más antigua. Si usa .NET 2.0 o superior, siempre use List cuando la matriz necesite contener elementos del mismo tipo. El uso de List sobre ArrayList mejora tanto el rendimiento como la usabilidad.

Como otros dijeron. Debes usar la Lista genérica, casi siempre cuando conoces el tipo (C # es un lenguaje fuerte) y otras formas cuando haces clases polimórficas / de inherencia u otras cosas por el estilo.

Si no desea utilizar consultas de Linq, entonces no necesita usar List. Si desea usar, entonces debe preferir List.

Los generics se introdujeron en .Net 2.0. Si está utilizando versiones anteriores de .Net, puede usar la lista de arreglos, de lo contrario podemos ir con la lista genérica. Array List es el obsoleto y no proporcionará un mejor tipo de seguridad y también creará problemas de boxeo y unboxing. Pero la lista genérica no lo hará.