Junior — Middle
¿Cuál es la diferencia entre la interfaz IList y la colección de tipo List en C#?
sobes.tech AI
Respuesta de la IA
IList<T> es una interfaz que define un conjunto de métodos y propiedades para trabajar con una colección que soporta indexación, adición, eliminación de elementos, etc. Establece un contrato que diferentes clases de colecciones pueden implementar.
List<T> es una implementación concreta de la interfaz IList<T>, que proporciona un array dinámico con acceso rápido por índice, así como la capacidad de añadir y eliminar elementos.
Diferencias principales:
- IList<T> es una abstracción que permite escribir código independiente de la implementación concreta de la colección.
- List<T> es una clase concreta con una implementación que se puede usar directamente.
Ejemplo:
IList<int> numbers = new List<int>();
numbers.Add(1);
numbers.Add(2);
Console.WriteLine(numbers[0]); // 1
Aquí, la variable se declara como IList<int>, lo que ofrece flexibilidad para cambiar la implementación sin modificar el resto del código.