Galvenā atšķirība - vispārīga un neparasta kolekcija C
Vispārējā kolekcija ir klase, kas nodrošina tipa drošību, neatvasinot no pamata kolekcijas veida un neieviešot tipam raksturīgus elementus. Nevispārīga kolekcija ir specializēta klase datu glabāšanai un izguvei, kas nodrošina atbalstu stekiem, rindām, sarakstiem un hashtables. Galvenā atšķirība starp vispārīgo un vispārīgo kolekciju C ir tāda, ka vispārīgā kolekcija ir stingri drukāta, bet ne vispārīga kolekcija nav stingri drukāta.
Kas ir vispārīgā kolekcija C?
Nevispārējas kolekcijas, piemēram, ArrayList, Queue, Stack utt.var uzglabāt dažādu datu tipu elementus. Iegūstot vienumus, programmētājam tie jāievada pareizajā datu tipā. Pretējā gadījumā tas var izraisīt izpildlaika izņēmumu. Šīs problēmas risināšanai var izmantot vispārīgās kolekcijas klases. Vispārējās kolekcijas elementi glabā iekšēji to faktisko veidu masīvos. Tāpēc tipa liešana nav nepieciešama. Tos var izmantot, lai uzglabātu norādītā tipa vai veidu elementus. Dažas vispārīgās kolekcijas klases ir saraksts, vārdnīca, sakārtotais saraksts, hashSet, rinda, kaudze.
GenericList satur noteikta veida elementus. Pievienojot elementus, tas var attiecīgi palielināt sarakstu. Ja ir šāds paziņojums, visiem elementiem, ko var saglabāt sarakstā1, ir jābūt veseliem skaitļiem, List list1 - jauns saraksts ();
Vispārējā vārdnīca C ir atslēgu un vērtību kolekcija. Ja ir šāds paziņojums, objekta vārdnīca1 var saglabāt int tipa atslēgas un virknes tipa vērtības.
Vārdnīcas vārdnīca1=jauna vārdnīca ();
Vispārējā SortedList kolekcija pēc noklusējuma saglabā atslēgu un vērtību pārus atslēgas augošā secībā. Zemāk redzamajā piemērā ir saglabāta int tipa atslēga un virknes veida vērtība.
SortedList s0=jauns sakārtotais saraksts ();
Tie ir daži piemēri vispārīgajai kolekcijai C. Šajās kolekcijās var saglabāt vairākas norādīto datu tipu vērtības. Tātad tie ir stingri rakstīti.
Kas ir nevispārīga kolekcija C?
Masīvus var izmantot, lai saglabātu vairākus elementus. Viens trūkums ir tāds, ka tajā var saglabāt viena veida datu elementus. C valodā ir klases, kuras var izmantot, lai saglabātu daudzas vērtības vai objektus, kas pazīstami kā kolekcijas. Kolekcijas palīdz uzglabāt, atjaunināt, dzēst, meklēt, kārtot objektus. Kolekcijas lielumu var dinamiski palielināt vai samazināt.
Dažas kolekcijas, kas nav vispārīgas, ir ArrayList, SortedList, Stack, Queue un HashTable. Katra kolekcijas klase īsteno IEnumerable saskarni. Tas palīdz atkārtot kolekcijas vienumu elementus, izmantojot foreach cilpu.
ArrayList ir alternatīva masīvam. Ja ir masīvs, kurā var saglabāt 10 elementus, tas nevar saglabāt 20 elementus. Ja masīvs ir inicializēts uz 10 elementiem, bet saglabā tikai 5 elementus, tad pārējie netiek izmantoti. Tāpēc masīvs ir fiksēts. ArrayList ir iespējams pievienot vai noņemt elementus atkarībā no indeksa. Tas nodrošina dinamisku atmiņas piešķiršanu. Kārtošanas metodi var izmantot, lai kārtotu elementus augošā secībā.
HashTable tiek izmantota, lai attēlotu atslēgu vērtību pāru kolekciju. Tie ir sakārtoti, pamatojoties uz atslēgas hashCode. Tāpēc katram elementam ir atslēgu vērtību pāris. Atslēgu var izmantot, lai piekļūtu konkrētam kolekcijas elementam. Stack apzīmē pēdējo ienākošo un pirmo piekļuvi vienumiem. Rinda tiek izmantota, lai piekļūtu vienumiem pirmais pirmais. Šīs ir dažas no nevispārējām kolekcijām, ko atbalsta C. Šajās kolekcijās var glabāt dažāda veida elementus.
Kāda ir līdzība starp vispārīgo un neģenerisko kolekciju C?
Gan vispārīgo, gan nevispārējo kolekciju var izmantot, lai saglabātu vairākus elementus C
Kāda ir atšķirība starp vispārīgo un nevispārējo kolekciju C?
Vispārīga pret vispārīgu kolekciju C |
|
Vispārējā kolekcija ir klase, kas nodrošina tipu drošību, neatvasinot no pamata kolekcijas veida un neieviešot tipam raksturīgus elementus. | Nevispārīga kolekcija ir specializēta klase datu glabāšanai un izguvei, kas nodrošina steku, rindu, sarakstu un jaucējtabulu atbalstu. |
Nosaukumtelpa | |
Vispārējās kolekcijas nodarbības ir sistēmā. Kolekcijas. Generics nosaukumvieta. | Sistēmā ir kolekcijas, kas nav vispārīgas. Kolekciju nosaukumvieta. |
Tips | |
Vispārējā kolekcija ir stingri drukāta. | Nevispārīga kolekcija nav stingri drukāta. |
Elementu glabāšana | |
Vispārējās kolekcijās elementi tiek glabāti iekšēji to faktisko veidu masīvos. | Nevispārējās kolekcijās elementi tiek glabāti iekšēji objektu masīvos, lai tajās varētu saglabāt jebkāda veida datus. |
Kopsavilkums - vispārīga un nevispārēja kolekcija C
Šajā rakstā tika apspriesta atšķirība starp vispārīgo un vispārīgo kolekciju C. Atšķirība starp vispārīgo un nevispārīgo kolekciju ir tāda, ka vispārīgā kolekcija ir stingri drukāta, bet ne vispārīga kolekcija nav stingri drukāta.