2010-03-18 16 views
6

Estoy utilizando .NET framework 1.1 y estoy esperando que alguien me ayude a implementar una matriz dinámica de objetos?¿Debo usar ArrayList o IList

Abajo figura un ejemplo diluido del objeto que deseo usar.

Class CarObj 
{ 
    public string CarName; 
    public string CarYear; 
} 

¿Debo usar un ArrayList o ¿cree que sería mejor hacer una clase carlista implementar una interfaz IList? ¿Hay un beneficio de rendimiento para uno sobre otro?

+3

¿Por qué una empresa tomaría la decisión de permanecer en la plataforma 1.1 cuando estamos a la salida de 4.0? –

Respuesta

4

Heredar CollectionBase en su lugar; esto envuelve IList y le permite proporcionar su propia implementación de los métodos escritos que necesita. Esto es lo que está diseñado :)

+0

¡GUAU! U chicos son rápidos! Gracias – Ryan

1

Si está utilizando 1.1 y necesita una colección de estilo de matriz dinámica, entonces ArrayList es la mejor opción para ponerlo en movimiento.

Sin embargo, odio todo el casting que viene con el uso de ArrayList y ciertamente no culpo a las personas por escribir colecciones personalizadas que tienen miembros fuertemente implementados en 1.1. Sin embargo, si sigues esta ruta, te sugiero que uses un generador personalizado versus tediosa codificación manual. Hay varios disponibles que se pueden encontrar rápidamente a través de google

Este enlace, por ejemplo, realmente generará el código para usted en el sitio web y puede simplemente copiarlo y pegarlo en su proyecto.

+0

Eso es genial, gracias por el enlace. – Ryan

0

El principal beneficio de la implementación de su propia clase de colección (ya que usted está atascado en el apartado 1.1) es escribir la seguridad; Cuando sepa con certeza que su colección puede contener solo CarObj instancias, no hay necesidad de conversión de tipo o preocuparse por los errores de conversión. Internamente, esta clase de recopilación podría usar un ArrayList para almacenar los objetos.