Sobes.tech
Junior — Middle

Wat is het verschil tussen de interface IList en de collectie van het type List in C#?

sobes.tech AI

Antwoord van AI

IList<T> is een interface die een set methoden en eigenschappen definieert voor het werken met een collectie die indexering, toevoegen, verwijderen van elementen, enz. ondersteunt. Het stelt een contract vast dat door verschillende collectieklassen kan worden geïmplementeerd.

List<T> is een concrete implementatie van de interface IList<T>, die een dynamische array biedt met snelle toegang via index, evenals de mogelijkheid om elementen toe te voegen en te verwijderen.

Belangrijkste verschillen:

  • IList<T> is een abstractie die het mogelijk maakt om code te schrijven die onafhankelijk is van de concrete implementatie van de collectie.
  • List<T> is een concrete klasse met een implementatie die direct kan worden gebruikt.

Voorbeeld:

IList<int> numbers = new List<int>();
numbers.Add(1);
numbers.Add(2);
Console.WriteLine(numbers[0]); // 1

Hier wordt de variabele gedeclareerd als IList<int>, wat flexibiliteit biedt om de implementatie te wijzigen zonder de rest van de code aan te passen.