Junior — Middle
Was ist der Unterschied zwischen der Schnittstelle IList und der Sammlung vom Typ List in C#?
sobes.tech KI
Antwort von AI
IList<T> ist eine Schnittstelle, die eine Reihe von Methoden und Eigenschaften definiert, um mit einer Sammlung zu arbeiten, die Indizierung, Hinzufügen, Entfernen von Elementen usw. unterstützt. Sie legt einen Vertrag fest, den verschiedene Sammlungsklassen implementieren können.
List<T> ist eine konkrete Implementierung der Schnittstelle IList<T>, die ein dynamisches Array mit schnellem Zugriff über den Index sowie die Möglichkeit zum Hinzufügen und Entfernen von Elementen bereitstellt.
Hauptunterschiede:
- IList<T> ist eine Abstraktion, die es ermöglicht, Code zu schreiben, der unabhängig von der konkreten Implementierung der Sammlung ist.
- List<T> ist eine konkrete Klasse mit einer Implementierung, die direkt verwendet werden kann.
Beispiel:
IList<int> numbers = new List<int>();
numbers.Add(1);
numbers.Add(2);
Console.WriteLine(numbers[0]); // 1
Hier wird die Variable als IList<int> deklariert, was Flexibilität beim Ändern der Implementierung bietet, ohne den restlichen Code zu ändern.