Već
ste učili kako se deklarišu i prave promenjive i konstante i kako da iste mogu
da budu različitih tipova podataka. Ukoliko se ne sećate baš najbolje te teme,
možete se podsetiti na ovom postu. Znači promenjive i konstante su odlične kada
imate potrebu za manje podataka, ali šta da radite ako vam na primer treba 1000
promenjivih ili čak da vi ne znate koliko će vam tačno biti potrebno
promenjivih? Nećete valjda deklarisati 1000 promenjivih, na šta bi taj vaš kod
ličio? Zbog takvih situacija u C# programskom jeziku ali definitivno i u svim
drugim programskim jezicima postoji nešto što zovemo nizovi. U informatičkoj
literaturi piše da je Array – niz fiksan broj promenjivih koje zovemo elementi.
To bi se tako moglo reći samo kad je niz definisan određenim brojem elemenata.
Ako mene pitate, najjednostavnije rečeno, niz vam je indeksiran skup podataka
istog tipa. Sintakse nizova u C# programskom jeziku su sledeće:
Jednodimenzionalan niz:
tip [] naziv_niza;
Dvodimenzionalni niz:
tip [ , ] naziv_niza;
Višedimenzionalan niz:
tip [ , , … ] naziv_niza;
Ortogonalni niz:
tip [ ] [ ] naziv_niza:
tip [] naziv_niza;
Dvodimenzionalni niz:
tip [ , ] naziv_niza;
Višedimenzionalan niz:
tip [ , , … ] naziv_niza;
Ortogonalni niz:
tip [ ] [ ] naziv_niza:
Nizovi nisu
ograničeni samo na osnovne tipove podataka nego se mogu deklarisati i kao
klase, strukture, numeracije ili neki tip podataka kojeg ste sami napravili.
Broj elemenata koji može biti u nizu zavisi od vašeg procesora ali i
operativnog sistema. Negde oko 4 biliona, ali imajte u vidu da Linux operativni
sistem to više ograničava nego Windows 10 operativni sistem. Moj savet vam je da
nikad ne pravite tako velike nizove gde se to može izbeći. Bolje napraviti više
nizova.
( Nizovi u C# programskom jeziku prikazani mapom uma )
Ukoliko ste vi
neko ko poznaje C++ programski jezik, treba da imate na umu da i pored iste
svrhe nizovi u C# programskom jeziku nisu isto što i nizovi u C++ programskom
jeziku, niti je njihova deklaracija ista. Ukoliko vas interesuje na koji način
funkcionišu nizovi u C++ programskom jeziku pogledajte ovde. Vi što ste nekada
učili Visual Basic programski jezik, sećate se da je niz predstavljao promenjiva
tipa SAFEARRAY, što znači da je rad sa nizom podrazumevalo izvesno angažovanje
sistema, ali je olakšavao rad sa nizovima. I ono je bolje nego što su to nizovi
u C i C++ programskim jezicima. Jednostavno, C# programski jezik je prevazišao
neke nedostatke koje nizovi imaju i sada nizove tretira kao svaki objekat sa
vlastitim metodama i svojstvima što vama olakšava rad sa nizovima. C# programski jezik podržava čak nizove u formi izričitog različitog tipa. Niz u C# programskom jeziku je sam po sebi referentni tip, čak i kad su njegovi
elementi vrednosti tipovi. To znači da promenjiva niza ukazuje na neprekidan blok
memorije koji sadrži elemente niza u hip memoriji kao što je to slučaj sa
klasama. Međutim da sada ne bismo vas plašili i otišli previše daleko
pogledajte praktičan primer kako se lako koriste nizovi.
Jednodimenzionalni
nizovi
