Különbség A Generikus és A Nem Generikus Gyűjtemény Között C-ben

Tartalomjegyzék:

Különbség A Generikus és A Nem Generikus Gyűjtemény Között C-ben
Különbség A Generikus és A Nem Generikus Gyűjtemény Között C-ben

Videó: Különbség A Generikus és A Nem Generikus Gyűjtemény Között C-ben

Videó: Különbség A Generikus és A Nem Generikus Gyűjtemény Között C-ben
Videó: hosszú (teszt) után bele ástam a mélyére a fejhallgatónak | JBL TUNE 510BT 2024, Lehet
Anonim

Fő különbség - Általános és nem általános gyűjtemény C # -ben

A Generic Collection olyan osztály, amely a típusbiztonságot biztosítja, anélkül, hogy egy alapgyűjtemény-típusból és a munkagép-típus-specifikus tagokból kellene származnia. A nem általános gyűjtemény egy speciális osztály az adattároláshoz és visszakereséshez, amely támogat halmokat, sorokat, listákat és hashtable-eket. A legfontosabb különbség a C # általános és nem általános gyűjteménye között az, hogy egy általános gyűjtemény erőteljesen be van írva, míg egy nem általános gyűjtemény nincs erősen beírva.

TARTALOM

1. Áttekintés és kulcsfontosságú különbség

2. Mi az általános gyűjtemény a C #

3. Mi a nem általános gyűjtemény a C #

4. A hasonlóságok az általános és a nem általános gyűjtemények között a C #

5. egymás mellett összehasonlítás - általános és nem általános gyűjtemény a C # táblázatos formában

6. Összegzés

Mi az általános gyűjtemény a C # -ben?

A nem általános gyűjtemények, mint például az ArrayList, Queue, Stack stb., Különböző adattípusok elemeit tárolhatják. Az elemek megszerzésénél a programozónak be kell írnia a helyes adattípusra. Egyébként futásidejű kivételt okozhat. A probléma megoldására az általános gyűjtési osztályok használhatók. Az általános gyűjtemények belső elemeket tárolnak a tényleges típusú tömbökben. Ezért nincs szükség típus öntésre. Használhatók a megadott típusú vagy típusú elemek tárolására. Néhány általános gyűjtési osztály: List, Dictionary, SortedList, HashSet, Queue, Stack.

Különbség az általános és a nem általános gyűjtemények között a C # -ben
Különbség az általános és a nem általános gyűjtemények között a C # -ben

A GenericList meghatározott típusú elemeket tartalmaz. Az elemek hozzáadásakor ennek megfelelően növelheti a listát. Ha van egy utasítás az alábbiak szerint, akkor a list1-ben tárolható összes elemnek egész számnak kell lennie, Lista lista1 - új Lista ();

A C # általános szótára kulcsok és értékek gyűjteménye. Ha van egy utasítás az alábbiak szerint, az objektum szótár1 tárolhatja az int típusú kulcsokat és a karakterlánc típusú értékeket.

Szótárszótár1 = új Szótár ();

A Generic SortedList gyűjtemény alapértelmezés szerint a kulcs és az értékpárokat a kulcs növekvő sorrendjében tárolja. Az alábbi példa az int típus kulcsát és a karakterlánc típusának értékét tárolja.

SortedList s0 = new SortedList ();

Ez néhány példa a C # általános gyűjteményére. Ezek a gyűjtemények a megadott adattípusok több értékét tárolhatják. Tehát erősen tipizáltak.

Mi a nem általános gyűjtemény a C # -ben?

A tömbök több elem tárolására használhatók. Az egyik hátrány, hogy azonos adattípusú elemeket képes tárolni. A C # -ben vannak olyan osztályok, amelyek sok gyűjtemény vagy más néven objektum tárolására használhatók. A gyűjtemények segítenek tárolni, frissíteni, törölni, keresni és rendezni az objektumokat. A gyűjtemény mérete dinamikusan növelhető vagy csökkenthető.

Néhány nem általános gyűjtemény osztály az ArrayList, a SortedList, a Stack, a Queue és a HashTable. Minden gyűjtési osztály megvalósítja az IEnumerable felületet. A foreach hurok segítségével elősegíti a gyűjtemény elemei közötti iterációt.

Az ArrayList egy tömb alternatívája. Ha van egy tömb, amely 10 elemet képes tárolni, akkor nem képes 20 elemet tárolni. Ha a tömb 10 elemre inicializált, de csak 5 elemet tárol, akkor a többit nem használjuk. Ezért egy tömb rögzített. Az ArrayList-ben lehetőség van elemek hozzáadására vagy eltávolítására az index függvényében. Dinamikus memória-allokációt tesz lehetővé. A rendezési módszerrel az elemek növekvő sorrendben rendezhetők.

A HashTable a kulcsértékpárok gyűjteményének ábrázolására szolgál. A kulcs hashCode-ja alapján vannak rendezve. Ezért minden elemnek van egy kulcsérték-párja. A kulcs felhasználható a gyűjtemény egy adott eleméhez való hozzáféréshez. A Verem a tételek utolsó be- és elsõ kijutását jelenti. A várólista a tételek első és első kimeneti elérésére szolgál. Ezek a C # által támogatott nem általános gyűjtemények. Ezek a gyűjtemények különböző típusú elemeket tárolhatnak.

Mi a hasonlóság a generikus és a nem generikus gyűjtemény között a C # -ben?

A Generic és a Generic Collection egyaránt felhasználható több elem tárolására a C # -ben

Mi a különbség a C # általános és nem általános gyűjteménye között?

Különböző cikk a táblázat előtt

Általános és nem általános gyűjtemény C # -ben

A Generic Collection olyan osztály, amely a típusbiztonságot biztosítja, anélkül, hogy egy alapgyűjtemény-típusból és a munkagép-típus-specifikus tagokból kellene származnia. A nem általános gyűjtemény egy speciális osztály az adattároláshoz és visszakereséshez, amely támogatja a halmokat, a várólistákat, a listákat és a hash táblákat.
Névtér
A Generic Collection osztályok a rendszerben vannak. Gyűjtemények. Generics névtér. A nem generikus gyűjtemény osztályok a rendszerben vannak. Gyűjtemények névtere.
típus
Egy általános gyűjtemény erősen be van írva. Egy nem generikus gyűjtemény nincs szigorúan beírva.
Elemek tárolása
Az Általános Gyűjtemények elemeket belsőleg tárolnak a tényleges típusú tömbökben. A nem általános gyűjtemények az elemeket belsőleg tárolják az objektumtömbökben, így bármilyen típusú adatot tárolhatnak.

Összegzés - Általános és nem általános gyűjtemény C # -ben

Ez a cikk megvitatta a C # általános és nem általános gyűjteményének különbségét. A különbség az általános és a nem általános gyűjtemény között az, hogy egy általános gyűjteményt erősen tipizálnak, míg egy nem általános gyűjteményt nem.

Ajánlott: