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

Съдържание:

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

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

Видео: Разлика между родовата и не-родовата колекция в C
Видео: Ангел Бэби Новые серии - Игра окончена (29 серия) Поучительные мультики для детей 2024, Декември
Anonim

Ключова разлика - Generic срещу Non-Generic Collection в C #

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

СЪДЪРЖАНИЕ

1. Общ преглед и ключова разлика

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

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

4. Прилики между родовата и не генеричната колекция в C #

5. Равно до сравнение - генерична срещу негенерична колекция в C # в таблична форма

6. Резюме

Какво е Generic Collection в C #?

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

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

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

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

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

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

SortedList s0 = нов SortedList ();

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

Какво е не-родова колекция в C #?

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

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

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

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

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

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

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

Различна статия Средна преди таблица

Обща срещу не-родова колекция в C #

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

Резюме - Generic vs Non-Generic Collection в C #

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

Препоръчано: