Ključna razlika - generična in ne-generična zbirka v C #
Generična zbirka je razred, ki zagotavlja varnost tipa, ne da bi morali izhajati iz osnovnega tipa zbirke in izvajati člane, značilne za tip. Negenerična zbirka je specializiran razred za shranjevanje in iskanje podatkov, ki zagotavlja podporo za sklade, čakalne vrste, sezname in hashtable. Ključna razlika med generično in ne-generično zbirko v C # je v tem, da je generična zbirka močno vnesena, medtem ko ne-generična zbirka ni močno vnesena.
VSEBINA
1. Pregled in ključna razlika
2. Kaj je generična zbirka v C #
3. Kaj je generična zbirka v C #
4. Podobnosti med generično in generično zbirko v C #
5. Vzporedna primerjava - generična in negenerična zbirka v C # v tabelarni obliki
6. Povzetek
Kaj je generična zbirka v jeziku C #?
Negenerične zbirke, kot so ArrayList, Queue, Stack itd., Lahko shranjujejo elemente različnih vrst podatkov. Ko pridobi elemente, naj jih programer vtipka in jih odda v pravi podatkovni tip. V nasprotnem primeru lahko povzroči izjemo med izvajanjem. Splošne razrede zbiranja lahko uporabimo za premagovanje te težave. Splošne zbirke hranijo elemente interno v nizih njihovih dejanskih vrst. Zato vlivanje tipa ni potrebno. Uporabljajo se lahko za shranjevanje elementov določene vrste ali vrst. Nekateri generični razredi zbiranja so Seznam, Slovar, Razvrščeni seznam, HashSet, Čakalna vrsta, Stack.
GenericList vsebuje elemente določene vrste. Seznam lahko ustrezno poveča pri dodajanju elementov. Če obstaja stavek, kot sledi, morajo biti vsi elementi, ki jih je mogoče shraniti na seznam1, cela števila, Seznam list1 - nov Seznam ();
Splošni slovar v jeziku C # je zbirka ključev in vrednosti. Ko obstaja stavek, kot sledi, lahko objektni slovar1 shrani tipke tipa int in vrednosti vrste nizov.
Slovar slovar1 = nov slovar ();
Zbirka Generic SortedList privzeto shrani pare ključev in vrednosti v naraščajočem vrstnem redu ključa. Spodnji primer shranjuje ključ vrste int in vrednost vrste niza.
SortedList s0 = novo SortedList ();
To je nekaj primerov za generično zbirko v jeziku C #. Te zbirke lahko shranijo več vrednosti določenih tipov podatkov. Torej so močno tipkani.
Kaj je generična zbirka v C #?
Polja se lahko uporabljajo za shranjevanje več elementov. Ena pomanjkljivost je, da lahko shrani elemente iste vrste podatkov. V C # obstajajo razredi, ki se lahko uporabljajo za shranjevanje številnih vrednosti ali predmetov, znanih kot zbirke. Zbirke pomagajo shranjevati, posodabljati, brisati, iskati, razvrščati predmete. Velikost zbirke je mogoče dinamično povečati ali zmanjšati.
Nekateri razredi negenerične zbirke so ArrayList, SortedList, Stack, Queue in HashTable. Vsak razred zbirke izvaja vmesnik IEnumerable. Pomaga pri pregledu elementov v zbirki z uporabo foreach zanke.
ArrayList je alternativa matriki. Če obstaja matrika, ki lahko shrani 10 elementov, ne more shraniti 20 elementov. Če je polje inicializirano na 10 elementov, vendar vsebuje le 5 elementov, potem ostalo ni uporabljeno. Zato je matrika fiksna. V seznamu ArrayList je mogoče dodati ali odstraniti elemente, odvisno od indeksa. Omogoča dinamično dodeljevanje pomnilnika. Način razvrščanja lahko uporabimo za razvrščanje elementov v naraščajočem vrstnem redu.
Tabela Hash se uporablja za predstavitev zbirke parov ključev vrednosti. Organizirani so na podlagi hashCode ključa. Zato ima vsak element par vrednosti ključ. S ključem lahko dostopate do določenega elementa v zbirki. Sklop predstavlja zadnji vhod, prvi izhod do elementov. Čakalna vrsta se uporablja za prvi dostop do elementov. To je nekaj negeneričnih zbirk, ki jih podpira C #. V teh zbirkah so lahko shranjeni elementi različnih vrst.
Kakšna je podobnost med generično in negenerično zbirko v jeziku C #?
Tako generično kot tudi generično zbirko lahko uporabite za shranjevanje več elementov v C #
Kakšna je razlika med generično in ne-generično zbirko v C #?
Diff Article Sredina pred mizo
Generic vs Non-Generic Collection v C # |
|
Generična zbirka je razred, ki zagotavlja varnost tipa, ne da bi morali izhajati iz osnovnega tipa zbirke in izvajati člane, značilne za tip. | Negenerična zbirka je specializiran razred za shranjevanje in iskanje podatkov, ki zagotavlja podporo za sklade, čakalne vrste, sezname in zgoščevalne tabele. |
Imenski prostor | |
Razredi generične zbirke so v sistemu. Zbirke. Imenski prostor generike. | Razredi negenerične zbirke so v sistemu. Imenski prostor zbirk. |
Tip | |
Generična zbirka je močno natipkana. | Negenerična zbirka ni močno vtipkana. |
Shranjevanje elementov | |
Generične zbirke hranijo elemente znotraj nizov njihovih dejanskih vrst. | Negenerične zbirke hranijo elemente znotraj elementov v nizih, tako da lahko shranijo katero koli vrsto podatkov. |
Povzetek - generična in ne-generična zbirka v C #
Ta članek je obravnaval razliko med generično in negenerično zbirko v jeziku C #. Razlika med generično in ne-generično zbirko je v tem, da je generična zbirka močno tipizirana, medtem ko ne-generična zbirka ni močno tipizirana.