Junior — Middle
Qual é a diferença entre a interface IList e a coleção do tipo List em C#?
sobes.tech IA
Resposta da IA
IList<T> é uma interface que define um conjunto de métodos e propriedades para trabalhar com uma coleção que suporta indexação, adição, remoção de elementos, etc. Ela estabelece um contrato que diferentes classes de coleções podem implementar.
List<T> é uma implementação concreta da interface IList<T>, fornecendo um array dinâmico com acesso rápido por índice, bem como a capacidade de adicionar e remover elementos.
Principais diferenças:
- IList<T> é uma abstração que permite escrever código independente da implementação concreta da coleção.
- List<T> é uma classe concreta com uma implementação que pode ser usada diretamente.
Exemplo:
IList<int> numbers = new List<int>();
numbers.Add(1);
numbers.Add(2);
Console.WriteLine(numbers[0]); // 1
Aqui, a variável é declarada como IList<int>, o que oferece flexibilidade para alterar a implementação sem modificar o restante do código.