Uni
PCAXE Addicted
- Učlanjen(a)
- 31.08.2018.
- Poruka
- 2.469
- Rezultat reagovanja
- 984
Moja konfiguracija
PC / Laptop Name:
Lenovo ThinkPad X250 - i5 5300U/8GB/256GB EVO 860/6 Cell
Mice & keyboard:
Bloody V7M & Stock Thinkpad X250 Keyboard
OS & Browser:
Windows 10 + Microsoft Edge | ArcoLinux + i3 + Mozilla Firefox Quantum
Pre svega, kao i uvek, apelujem na vas da, ukoliko ste propustili iti jedan tutorijal iz serije ovih, iščitate dotične, pošto se svi nadovezuju jedni na druge. Ovo možete učiniti unosom "#xna-gwid" bez navodnika u polje foruma "Pretraga...".
Šta ćemo danas obraditi?
Kada programiramo, želimo da smestimo više vrednosti u jedan skup, kao što su učenici jednog odeljenja. Danas ćemo saznati kako je to moguće učiniti u C#-u pomoću jednodimenzionih nizova. Ako ste spremni, 'ajde da počnemo!
Nizovi
Kada je reč o skupu promenljivih čiji je broj tačno određen, kao što je četiri kriminalca, koristimo nizove, tj. kolekcija podataka striktno određenog broja. Nizovi prihvataju samo deklarisani tip podataka, tako da u jednom standardnom nizu nije moguće smestiti i brojeve i reči, ili nešto slično.
Inicijalizacija
Pri inicijalizaciji nizova koristimo sledeći oblik :
U praksi bi to izgledalo ovako :
Pozivanje elemenata
Elementi niza se pozivaju po njihovom rednom broju. Ovo se obavlja nevođenjem naziva niza, koga prate uglaste zagrade unutar kojih je naveden tzv. indeks. Indeks označava redni broj vrednosti u nizu, a počinje od 0. U prethodnom primeru, indeks prve vrednosti bio bi 0, a poslednje 4, što znači da taj niz ima 4+1=5 elemenata. Razmotrimo sledeći primer :
Dodeljivanje vrednosti
Naravno da ne želimo da naši elementi imaju povratne vrednosti 0, null ili prazan tekst, već želimo da im nađemo realnu primenu. Dodeljivanje se vrši slično kao i pozivanje, navođenjem naziva niza, indeksa, znaka jednakosti i nove vrednosti. Pogledajte sledeći primer :
Ako želimo da dodelimo sve vrednosti niza, to možemo učiniti old school metodom dodeljivanja svake vrednosti pojedinačno, ali je to moguće izvesti velikom uštedom vremena, korišćenjem blokova. To se čini pri samoj deklaraciji tipa, kao u sledećem primeru :
Šta dalje?
Kao što ste primetili, ovaj tutorijal će se sastojati iz više delova, najverovatnij 6-8 u kojima ćemo obraditi jednodimenzione, višedimenzionenizove i zupčaste nizove, liste, foreach petlju, skupove i rečnike
Oprostite što malo neredovnije pišem tutorijale, krećemo od danas punom parom
Šta ćemo danas obraditi?
Kada programiramo, želimo da smestimo više vrednosti u jedan skup, kao što su učenici jednog odeljenja. Danas ćemo saznati kako je to moguće učiniti u C#-u pomoću jednodimenzionih nizova. Ako ste spremni, 'ajde da počnemo!
Nizovi
Kada je reč o skupu promenljivih čiji je broj tačno određen, kao što je četiri kriminalca, koristimo nizove, tj. kolekcija podataka striktno određenog broja. Nizovi prihvataju samo deklarisani tip podataka, tako da u jednom standardnom nizu nije moguće smestiti i brojeve i reči, ili nešto slično.
Inicijalizacija
Pri inicijalizaciji nizova koristimo sledeći oblik :
U ovom zapisu, tip označava tip podatka koji ćemo smestiti u nizu, koga slede uglaste zagrade (male zagrade) što označava da je reč o nizu. Naziv simbolizuje naziv ispisan u Camel Case formatu. Primetićete da je reč new označena roze bojom, čime naglašavam da je to jedna od rezervisanih reči u C#-u. Nakon toga sledi još jedan par uglastih zagrada, unutar kojih se iskazuje broj promenljivih koje smeštamo.tip[] naziv = new tip[broj];
U praksi bi to izgledalo ovako :
Važno je znati da kao i svaki tip, svaka vrednost pri inicijalizaciji ima deklarisanu vrednost "null" ili podrazumevanu vrednost tipa kao što je za Int32 to 0.int[] brojevi = new int[4];
Pozivanje elemenata
Elementi niza se pozivaju po njihovom rednom broju. Ovo se obavlja nevođenjem naziva niza, koga prate uglaste zagrade unutar kojih je naveden tzv. indeks. Indeks označava redni broj vrednosti u nizu, a počinje od 0. U prethodnom primeru, indeks prve vrednosti bio bi 0, a poslednje 4, što znači da taj niz ima 4+1=5 elemenata. Razmotrimo sledeći primer :
Povratan vrednost metode WriteLine, klase Console, bila bi 0. Ovo se dešava jer su svim elementima niza "brojevi" dodeljene podrazumevane vrednosti 0, pa bismo nezavisno od indeksa dobili istu povratnu vrednost. Ako bismo probali da indeks zamenimo sa vrednošću manjom od najveće inicijalizovane ili manjom od najmanje inicijalizovane, program se ne bi izvršio već bi izbacio grešku "IndexOutOfRange Exception" ili "IndexOutOfBounds Exception" u zavisnosti od tipa koji koristimo.int[] brojevi = new int[4];
Console.WriteLine(brojevi[3]);
Dodeljivanje vrednosti
Naravno da ne želimo da naši elementi imaju povratne vrednosti 0, null ili prazan tekst, već želimo da im nađemo realnu primenu. Dodeljivanje se vrši slično kao i pozivanje, navođenjem naziva niza, indeksa, znaka jednakosti i nove vrednosti. Pogledajte sledeći primer :
Sada je povratna vrednost prvog elementa niza "brojevi" jednaka 2, pa bi pozivanjem te vrednosti kompajler izbacio vrednost 2.int[] brojevi = new int[4];
brojevi[0] = 2;
Ako želimo da dodelimo sve vrednosti niza, to možemo učiniti old school metodom dodeljivanja svake vrednosti pojedinačno, ali je to moguće izvesti velikom uštedom vremena, korišćenjem blokova. To se čini pri samoj deklaraciji tipa, kao u sledećem primeru :
Ova komanda takođe kreira niz od pet elemenata, čije su vrednosti, redom : 2, 45, 23, 1 i 2. Vidite da možete u istom nizu ponoviti istu vrednost, jer su to zapravo dva zasebna broja.int[] brojevi = new int[] {2, 45, 23, 1, 2};
Šta dalje?
Kao što ste primetili, ovaj tutorijal će se sastojati iz više delova, najverovatnij 6-8 u kojima ćemo obraditi jednodimenzione, višedimenzionenizove i zupčaste nizove, liste, foreach petlju, skupove i rečnike
Oprostite što malo neredovnije pišem tutorijale, krećemo od danas punom parom