1.1. Definisanje nizovnih promenljivih u C#

U C# jeziku niz (array) predstavlja kolekciju elemenata istog tipa. Elementima se pristupa pomoću indeksa, a prvi indeks je 0.

Niz možemo deklarisati na više načina. 

Napomena: Deklaracija znači da smo definisali promenljivu niza, dok inicijalizacija znači da smo nizu dodelili početne vrednosti ili rezervisali prostor za njegove elemente.

U ovom slučaju navodimo tip elemenata i uglaste zagrade, ali još ne pravimo niz.

int[] brojevi;
string[] imena;
double[] cene;

U ovom trenutku promenljive nisu inicijalizovane i ne mogu se koristiti za pristup elementima.

Da bismo ih koristili, potrebno je na primer:

int[] brojevi;
brojevi = new int[5];

Sada je napravljen niz od pet elemenata tipa int.

Možemo istovremeno deklarisati promenljivu i kreirati niz određenog broja elemenata.

int[] brojevi = new int[5];

Ovaj izraz znači:

  • int[] – niz celih brojeva;

  • brojevi – naziv promenljive;

  • new int[5] – kreira niz sa pet elemenata.

 


int[] brojevi = new int[3]; brojevi[0] = 10; brojevi[1] = 20; brojevi[2] = 30;

Ako unapred znamo vrednosti elemenata, možemo ih navesti između vitičastih zagrada.

int[] brojevi = { 10, 20, 30, 40 };

Kompajler će na osnovu navedenih vrednosti da određuje koji je broj elemenata niza.

Primeri:

int[] ocene = { 5, 4, 3, 5, 4 };

double[] cene = { 120.5, 250.0, 99.9 };

string[] imena = { "Ana", "Marko", "Jelena" };

char[] slova = { 'A', 'B', 'C' };

Broj elemenata možemo proveriti pomoću svojstva Length:

int[] ocene = { 5, 4, 3, 5, 4 };

Console.WriteLine(ocene.Length);

Rezultat:

5

Početne vrednosti možemo navesti i uz eksplicitno korišćenje new.

int[] brojevi = new int[] { 10, 20, 30 };

Isto se može napisati kraćim oblikom:

int[] brojevi = { 10, 20, 30 };

Oba oblika daju niz sa istim elementima.

Još primera:

string[] imena = new string[] { "Ana", "Marko", "Jelena" };

double[] cene = new double[] { 10.5, 20.5, 30.5 };

Napomena: new int[] { ... } i int[] { ... } nisu dve različite vrste nizova. Razlika je samo u načinu pisanja inicijalizacije.

C# omogućava da se lokalna promenljiva deklariše pomoću ključne reči var. Kompajler tada određuje tip na osnovu izraza sa desne strane.

var brojevi = new int[] { 10, 20, 30 };

Tip promenljive brojevi je int[].

Još primera:

var imena = new string[] { "Ana", "Marko" };

var cene = new double[] { 10.5, 20.5 };

var ne znači da promenljiva može naknadno promeniti tip. Tip je određen prilikom kompajliranja.

Na primer:

var broj = 10;

// broj = "tekst"; // Greška: broj je tipa int

Za one koji žele da znaju više:

U C# jeziku niz je objekat, pa se može čuvati i u promenljivoj tipa Array.

Array brojevi = new int[] { 10, 20, 30 };

Ovde je promenljiva brojevi deklarisana kao Array, ali objekat koji je kreiran jeste niz celih brojeva.

Za početnike je važno razlikovati:

int[] brojevi = { 10, 20, 30 };

od:

Array brojevi = new int[] { 10, 20, 30 };

U prvom primeru promenljiva je tipa int[], a u drugom je tipa Array.

Uobičajeno je koristiti konkretan tip niza (int[], double[], string[]) kada želimo da jasno navedemo tip elemenata.

Moguće je navesti tip niza i odvojeno dodeliti vrednosti pomoću inicijalizatora:

int[] brojevi;

brojevi = new int[] { 10, 20, 30 };

Ovo je korisno kada promenljivu prvo deklarišemo, a zatim je inicijalizujemo u nekom drugom delu programa.

Primer:

string[] imena;

imena = new string[] { "Ana", "Marko", "Jelena" };

 

1.1.8. Deklaracija višedimenzionalnog niza

Pored jednodimenzionalnih nizova, C# podržava i višedimenzionalne nizove.

Dvodimenzionalni niz – matrica


int[,] matrica = new int[2, 3];

Ovaj niz ima dva reda i tri kolone.

Vrednosti možemo postaviti ovako:

matrica[0, 0] = 1;
matrica[0, 1] = 2;
matrica[0, 2] = 3;

matrica[1, 0] = 4;
matrica[1, 1] = 5;
matrica[1, 2] = 6;

Pristup elementu:

Console.WriteLine(matrica[1, 2]);

Rezultat:

6

Inicijalizacija dvodimenzionalnog niza:

int[,] matrica =
{
    { 1, 2, 3 },
    { 4, 5, 6 }
};

1.1.9. Niz nizova – jagged array

C# podržava i niz čiji su elementi drugi nizovi.

int[][] brojevi = new int[2][];

Zatim možemo definisati pojedinačne nizove:

brojevi[0] = new int[3];
brojevi[1] = new int[2];

Primer inicijalizacije:

int[][] brojevi =
{
    new int[] { 1, 2, 3 },
    new int[] { 4, 5 }
};

Pristup elementu:

Console.WriteLine(brojevi[0][1]);

Rezultat:

2

Razlika:

  • int[,] – pravougaoni višedimenzionalni niz.

  • int[][] – niz čiji su elementi nizovi; unutrašnji nizovi mogu imati različite dužine.

Ovo je dodatni sadržaj i može se ostaviti za kasniju lekciju o višedimenzionalnim nizovima.

Način   Primer Objašnjenje
Deklaracija  int[] brojevi; Samo definiše promenljivu.
Kreiranje po veličini  new int[5] Kreira niz sa 5 elemenata.
Inicijalizacija  int[] a = { 1, 2, 3 }; Kreira niz sa početnim vrednostima.
Eksplicitni new  new int[] { 1, 2, 3 } Kreira niz uz navođenje tipa.
var  var a = new int[5]; Kompajler određuje tip promenljive.
     
Dvodimenzionalni niz  int[,] a = new int[2,3]; Kreira matricu.
Jagged array  int[][] a = new int[2][]; Kreira niz nizova.
Last modified: Friday, 25 September 2026, 11:34 AM