Junior — Middle
Kāda ir atšķirība starp interfeisu IList un kolekciju tipa List C#?
sobes.tech AI
Atbilde no AI
IList<T> irsa interfeiss, kas definē metožu un īpašību kopumu darbam ar kolekciju, kas atbalsta indeksēšanu, elementu pievienošanu, dzēšanu utt. Tas nosaka līgumu, ko var īstenot dažādas kolekciju klases.
List<T> ir konkrēta IList<T> interfeisa īstenošana, kas nodrošina dinamisku masīvu ar ātru piekļuvi pēc indeksa, kā arī iespēju pievienot un dzēst elementus.
Galvenās atšķirības:
- IList<T> ir abstrakcija, kas ļauj rakstīt kodu, kas ir neatkarīgs no konkrētās kolekcijas īstenošanas.
- List<T> ir konkrēta klase ar īstenojumu, ko var tieši izmantot.
Piemērs:
IList<int> skaitli = new List<int>();
skaitli.Add(1);
skaitli.Add(2);
Console.WriteLine(skaitli[0]); // 1
Šeit mainīgais ir deklarēts kā IList<int>, kas nodrošina elastību mainīt īstenojumu, nemainot pārējo kodu.