Разлика между генеричната и не-родовата колекция в C #

Ключова разлика - Generic vs Non-Generic Колекция в C #
 

Генеричната колекция е клас, който осигурява безопасност на типа, без да се налага да произлиза от основен тип колекция и да реализира специфични за типа членове. Негенеричната колекция е специализиран клас за съхранение и извличане на данни, който осигурява поддръжка за стекове, опашки, списъци и хеш-таблици. Най- ключова разлика между Generic и Non-generic Collection в C # е това родова колекция е силно набрана, докато не-родовата колекция не е силно набрана.

СЪДЪРЖАНИЕ

1. Преглед и ключова разлика
2. Какво е родовата колекция в C #
3. Какво е негенерична колекция в C #
4. Прилики между родовата и негенеричната колекция в C #
5. Паралелно сравнение - Generic срещу Non-Generic колекция в C # в таблична форма
6. Резюме

Какво представлява родовата колекция в C #?

Негенеричните колекции като ArrayList, Queue, Stack и др. Могат да съхраняват елементи от различни типове данни. При получаване на елементите програмистът трябва да ги въведе в правилния тип данни. Освен това, това може да причини изключение по време на изпълнение. За преодоляване на този проблем могат да се използват класовете за генерични колекции. Генеричните колекции съхраняват вътрешно елементи в масиви от техните реални типове. Следователно, типовото леене не се изисква. Те могат да се използват за съхранение на елементи от посочения тип или видове. Някои класове за генерични колекции са Списък, Речник, SortedList, HashSet, Queue, Stack .

GenericList съдържа елементи от определен тип. Той може съответно да увеличи списъка при добавяне на елементи. Когато има оператор по следния начин, всички елементи, които могат да се съхраняват в списъка1, трябва да са цели числа,

Списък списък1 - нов Списък ();

Общият речник в C # е съвкупност от ключове и стойности. Когато има оператор по следния начин, обектовият речник1 може да съхранява клавиши тип int и стойности на типа низ.

Речник речник1 = нов речник ();

Колекцията Generic SortedList съхранява двойки ключове и стойности във възходящ ред на ключа по подразбиране. По-долу пример съхранява ключ от тип int и стойност на тип низ.

SortedList s0 = нов SortedList ();

Това са няколко примера за Generic Collection в C #. Тези колекции могат да съхраняват множество стойности на посочените типове данни. Така че, те са силно набрани.

Какво е негенерична колекция в C #?

Масивите могат да се използват за съхраняване на множество елементи. Един недостатък е, че може да съхранява елементи от един и същ тип данни. В C # има класове, които могат да се използват за съхраняване на много стойности или обекти, известни като колекции. Колекциите помагат за съхраняване, актуализиране, изтриване, търсене, сортиране на обекти. Размерът на колекцията може да се увеличава или намалява динамично.

Някои некласически колекционни класове са ArrayList, SortedList, Stack, Queue и HashTable. Всеки клас колекция реализира интерфейса IEnumerable. Той помага да се повтори чрез елементите на колекцията, като се използва предния цикъл.

ArrayList е алтернатива на масив. Ако има масив, който може да съхранява 10 елемента, той не може да съхранява 20 елемента. Ако масивът се инициализира до 10 елемента, но съхранява само 5 елемента, тогава останалото не се използва. Следователно, масивът е фиксиран. В ArrayList е възможно да добавяте или премахвате елементи в зависимост от индекса. Той позволява динамично разпределение на паметта. Методът за сортиране може да се използва за сортиране на елементите във възходящ ред.

HashTable се използва за представяне на колекция от двойки ключови стойности. Те се организират въз основа на hashCode на ключа. Следователно, всеки елемент има двойка ключови стойности. Ключът може да се използва за достъп до определен елемент в колекцията. Стекът представлява последния достъп, първият достъп до елементи. Опашката се използва за пръв достъп до обекти. Това са някои от негенеричните колекции, поддържани от C #. Тези колекции могат да съхраняват елементи от различни типове.

Какво е сходството между родовата и негенеричната колекция в C #?

  • Както Generic, така и Non-Generic Collection могат да се използват за съхраняване на множество елементи в C #.

Каква е разликата между родовата и не-родовата колекция в C #?

Generic vs Non generic Collection в C #

Генеричната колекция е клас, който осигурява безопасност на типа, без да се налага да произлиза от основен тип колекция и да реализира специфични за типа членове. Негенеричната колекция е специализиран клас за съхранение и извличане на данни, който осигурява поддръжка за стекове, опашки, списъци и хеш-таблици.
 Именно пространство
Класовете Generic Collection са в системата. Колекции. Пространство от имена на генерични продукти. Класовете за негенерични колекции са в системата. Пространство с имена на колекции.
Тип
Генерична колекция е силно набрана. Колекцията, която не е родова, не е набрана силно.
 Съхранение на елементи
Генеричните колекции съхраняват вътрешно елементи в масиви от техните реални типове. Негенеричните колекции съхраняват елементи вътре в масиви от обекти, за да могат да съхраняват всякакъв тип данни.

резюме - Generic vs Non-Generic Колекция в C #

Тази статия обсъжда разликата между Generic и Non-generic Collection в C #. Разликата между Generic и Non-generic Collection е, че Generic Collection е силно въведен, докато Non-generic Collection не е силно въведен.

справка:

1. "Кога да използвам общи колекции." Документи на Microsoft. Налични тук 
2. „Генерична колекция в C #.“ TutorialsTeacher.com. Налични тук  
3. „Колекция C #:“ Колекция в C #, TutorialsTeacher.com. Налични тук  
4. „Колекции C #.“, Точки за уроци, 19 март 2018 г. Достъпно тук

С любезност на изображенията:

1.'Logo C Sharp'By Microsoft, (Public Domain) през Commons Wikimedia