deklaracija:
Nizovi se deklariraju pomoću 'type[] ArrayName;' sintaksu gdje tip označava vrstu članova u kolekciji polja, a 'ArrName' je naslov koji je dodijeljen nizu. Deklaracija niza označava se uglatim zagradama [].
tip [ ] ArrayName = novi tip [ ] ; Popisi se deklariraju pomoću “List
Popis < tip > lista imena = novi popis < tip > ( ) ;
Inicijalizacija:
Nizovi koriste vitičaste zagrade {} da bi zatvorili vrijednosti, dok popisi koriste novi List
tip [ ] ArrayName = { v1 , v2 , v3 , ... } ;
Popis < tip > lista imena = novi popis < tip > { v1 , v2 , v3 , ... } ;
Dodavanje vrijednosti:
Ključno je zapamtiti da C# nizovi imaju određenu veličinu. Ako je potrebna drugačija veličina, potrebno je stvoriti novi niz 'newArr' sa željenom veličinom (trenutna duljina + broj novih vrijednosti). Dodajte izvorni niz 'OrgArr' u novi niz i dodijelite nove vrijednosti novim pozicijama u novom nizu i ažurirajte referencu na novi niz.
Niz. Kopirati ( OrgArr , noviArr , OrgArr. Duljina ) ;
noviArr [ OrgArr. Duljina ] = 14 ; // nova vrijednost
noviArr [ OrgArr. Duljina + 1 ] = 2 ; // nova vrijednost
OrgArr = noviArr ; // Ažuriranje reference int[] NewArr = new int[OrgArr.Length + 2];
Popisi nude fleksibilnost u pogledu upravljanja veličinom. Kada se popis inicijalizira, počinje s početnim kapacitetom, ali se može automatski proširiti kako se doda više elemenata. Ova mogućnost dinamičke promjene veličine omogućuje prilagodbu popisa promjenjivim zahtjevima. C# popisi pružaju funkciju Add() za dodavanje vrijednosti na popis. Evo kako možete dodati vrijednosti na C# popis:
Nizovi vs popisi : Usporedba upotrebe u C #
Pristup vrijednostima
Vrijednostima u nizu brojeva pristupa se korištenjem oznake indeksa [], tj. korištenjem broja indeksa u zagradama i sprema se u drugu varijablu.
element tipa = ArrayName [ indeks ] ;Za pristup vrijednostima u C# popisu, također možete koristiti indeksnu notaciju [] zajedno sa željenom pozicijom indeksa slično nizovima.
element tipa = Lista imena [ indeks ] ;
Uklanjanje vrijednosti
Nizovi imaju zadanu duljinu. Stoga, da bi se uklonili elementi, mora se stvoriti novi niz s manjom veličinom, a postojeći elementi moraju se kopirati. To se može učiniti korištenjem funkcije Array.Copy() kao što je objašnjeno u odjeljku 'Dodavanje vrijednosti'. U C# listama, uklanjanje vrijednosti puno je jednostavnije i intuitivnije. Klasa List
Prebrojite vrijednosti
Za brojanje vrijednosti u C# nizu, možete koristiti atribut duljine niza. Svojstvo length daje vam ukupan broj vrijednosti u nizu.
int računati = naziv polja. Duljina ;Za prebrojavanje vrijednosti u C# popisu, možete upotrijebiti značajku 'brojanja' popisa. Ukupnu količinu elemenata koji se trenutno nalaze na popisu također vraća atribut 'count'.
int računati = lista imena. Računati ;Ponovite vrijednosti
Za ponavljanje vrijednosti u C# nizu, možete koristiti petlju 'for' s duljinom niza kao uvjetom petlje.
za ( int ja = 0 ; ja < ArrayName. Duljina ; ja ++ ) {tip e = naziv polja [ ja ] ;
Konzola. WriteLine ( to je ) ;
}
Za ponavljanje vrijednosti u C# popisu, možete koristiti petlju 'foreach' jer pojednostavljuje proces ponavljanja automatskim ponavljanjem preko elemenata.
za svakoga ( upišite e u listName ) {Konzola. WriteLine ( to je ) ;
}
Primjer 1: C# nizovi
Zadani kod deklarira i inicijalizira niz cijelih brojeva pod nazivom “Arr” duljine 5 i dodjeljuje vrijednosti njegovim elementima. Dodijeljene vrijednosti elementima niza su 11, 12, 13, 14 i 15. Kod zatim nastavlja s prikazom elemenata niza pomoću petlje 'for'. Svaka se komponenta prikazuje u zasebnom retku pomoću metode Console.WriteLine().
Nakon prikazivanja originalnih elemenata, kod mijenja element na indeksu 2 dodjeljivanjem nove vrijednosti 10. Zatim, kod prikazuje modificirani niz ponavljanjem kroz elemente ponovnim korištenjem 'for' petlje. Na kraju, kod prikazuje ukupan broj vrijednosti koje se nalaze u nizu pomoću svojstva 'Arr.Length' koje daje duljinu niza.
pomoću sustava ;klasa Dummy {
statički poništiti Glavni ( ) {
int [ ] Arr = novi int [ 5 ] { jedanaest , 12 , 13 , 14 , petnaest } ;
Konzola. WriteLine ( 'Elementi:' ) ;
za ( int ja = 0 ; ja < Arr. Duljina ; ja ++ )
{
Konzola. WriteLine ( Arr [ ja ] ) ;
}
Arr [ 2 ] = 10 ;
Konzola. WriteLine ( 'Modificirani niz:' ) ;
za ( int ja = 0 ; ja < Arr. Duljina ; ja ++ )
{
Konzola. WriteLine ( Arr [ ja ] ) ;
}
Konzola. WriteLine ( 'Broj elemenata: ' + Arr. Duljina ) ;
}
}
Primjer 2: C# liste
Sljedeći navedeni kod demonstrira upotrebu C# liste za pohranjivanje i rukovanje kolekcijom cijelih brojeva. Prvo, kod inicijalizira popis pod nazivom “Arr” s pet cijelih brojeva: 11, 12, 13, 14 i 15. To se postiže pomoću klase List
Zatim program ispisuje poruku 'Elements:' i nastavlja ponavljati svaki element na popisu koristeći petlju 'foreach'. Tijekom svake iteracije, trenutni element ispisuje se na konzolu pomoću metode Console.WriteLine().
Nakon toga, kod mijenja vrijednost na indeksu 2 popisa dodjeljivanjem vrijednosti 10 (Arr[2] = 10). Ovaj redak mijenja treći element na popisu s 13 na 10. Nakon izmjene, program ponovno ispisuje poruku 'Modified list:' i ponavlja ažurirani popis, ispisujući svaki element na konzoli. Kôd zatim prikazuje broj vrijednosti na popisu koristeći “Arr.Count”. Ovo svojstvo vraća broj stavki koje su prisutne na popisu koji je, u sljedećem scenariju, slučajno 5.
Na kraju, kod uklanja element s vrijednošću 4 s popisa pomoću metode Arr.Remove(4). Ova metoda traži navedenu vrijednost na popisu i uklanja njezino prvo pojavljivanje. Na kraju, program ispisuje poruku 'Popis nakon uklanjanja:' i još jednom prelazi preko popisa, prikazujući svaki preostali element nakon operacije uklanjanja.
pomoću sustava ;pomoću sustava. Zbirke . Generički ;
klasa Dummy {
statički poništiti Glavni ( ) {
Popis < int > Arr = novi popis < int > ( ) { jedanaest , 12 , 13 , 14 , petnaest } ;
Konzola. WriteLine ( 'Elementi:' ) ;
za svakoga ( int n u Arr )
{
Konzola. WriteLine ( n ) ;
}
Arr [ 2 ] = 10 ;
Konzola. WriteLine ( 'Izmijenjeni popis:' ) ;
za svakoga ( int n u Arr )
{
Konzola. WriteLine ( n ) ;
}
Konzola. WriteLine ( 'Broj elemenata: ' + Arr. Računati ) ;
Arr. Ukloniti ( 4 ) ;
Konzola. WriteLine ( 'Popis nakon uklanjanja:' ) ;
za svakoga ( int n u Arr )
{
Konzola. WriteLine ( n ) ;
}
}
}
Zaključak
Ovaj vodič pokriva osnovne razlike u sintaksi između C# nizova i C# popisa. Nizovi imaju fiksnu duljinu i pristupa im se putem indeksa, dok su popisi dinamičke veličine i pružaju dodatne metode za dodavanje i uklanjanje elemenata. Uz to, osigurali smo C# liste programa koji prikazuju deklaraciju, inicijalizaciju, pristup, modificiranje, brojanje i dodavanje elemenata.