Visual Basic – Dimenzionisanje i manipulacija nizovima (I deo)

Nizovi (arrays) su nezaobilazni elementi u programiranju, jednostavni su za koriลกฤ‡enje, te svakom programeru obezbeฤ‘uju mnoge sofisticirane tehnike. ฤŒak i sada kada imamo nove moguฤ‡nosti, kao ลกto su klase ili objekti, nizovi su i dalje neophodni. Nikada ne potcenjujte vrednost nizova u brzom i lakom kreiranju listi, koje lako moลพete da adresirate i organizujete.

U osnovi niza je lista vrednosti, sa odgovarajuฤ‡im meฤ‘usobnim vezama. Na primer, ako imamo varijable sa vrednostima „Milan“, „Goran“, „Zoran“ i „Pera“, mi imamo samo listu varijabli, ali ne i niz. Unutar jednog niza sve varijable imaju isti naziv. Razlika izmeฤ‘u jednog elementa niza i drugog, je brojka koju nazivamo indeks (subscript). Na primer, u sledeฤ‡em redu imamo string vrednost – „Pera“, koji je deseti element u nizu „MojNiz“:


MojNiz(10) = „Pera“

Sintaksa je vrlo jednostavna – prvo imamo naziv niza, zatim iza ide indeks elementa niza zatvoren u zagrade. Ove elemente moลพete kombinovati dalje u izraze, ako i obiฤne varijable. Elementi niza MojNiz(1) i MojNiz(10) predstavljaju odvojene varijable sa razliฤitim sadrลพajima, ali sa istim nazivom.

Visual Basic nizovi dolaze u razliฤitim vidovima i dimenzijama; a ograniฤenje njihovog koriลกฤ‡enja moลพe biti samo vaลกa imaginacija. Pre nego ลกto upotrebite sam niz potrebno je da ga jednostavno definiลกete:


Dim Mesec(12) As String

Kljuฤna reฤ „Dim“ govori Visual Basic-u da izdvoji (alocira) prostor za odreฤ‘eni broj elemenata, tj. broj koji je naveden u zagradama, odmah iza naziva varijable. Kljuฤnom reฤju „As“ odreฤ‘ujemo tip niza koji kreiramo, i u ovom sluฤaju radi se o nizu stringova. U naลกem primeru, niz ima fiksnu veliฤinu, i najveฤ‡i dostupni indeks je 12. Ako probate da pristupite elementu Mesec(13), izazvaฤ‡ete greลกku. Ukoliko pri definisanju niza ne znate koliko ฤ‡e niz imati elemenata, jednostavno izostavite brojku u zagradama:


Dim Godina() As String

Ova deklaracija kreira niz, ali ne vrลกi se nikakva alokacija prostora za elemente niza. Pre nego ลกto poฤnete sa upotrebom niza, potrebno je da kreirate elemente. Da bi ovo odradili, koristite instrukciju ReDim:


ReDim Godina(50)

Ovde stvari postaju malo „ฤupavije“. Moลพete koristiti „ReDim“ i bez prethodne „Dim“ deklaracije. Ali, zaลกto onda koristiti prvo Dim, pa ReDim? Za razliku od kljuฤne reฤi Dim, ReDim je izraz koji se smatra izvrลกnim, ลกto znaฤi da se on moลพe upotrebljavati samo u procedurama. Ako vam je potrebno da kreirate niz ฤije podruฤje delovanja pokriva modul ili celu aplikaciju, biฤ‡e potrebno da ga deklariลกete na odgovarajuฤ‡oj lokaciji – u „Declarations“ sekciji formi, klase ili modula. Prema tome, ako je potrebno da koristite niz u viลกe od jedne procedure, i pri tome ne znate koliko ฤ‡e elemenata da ima, moraฤ‡ete da ostavite prazne zagrade kod Dim deklaracije, pa da potom kasnije izvrลกite ReDim.

Pratite Krstaricu na www.krstarica.com