Tömbök
A programozás közben sok esetben eg adott típusú adatból nem csak egyet-egyet, hanem sokat kell tárolnunk. Ilyen esetekben használhtjuk a tároló,vagy konténer objeltumokat.
A legyegyszerűbb tárolónk a tömb. A tömb egy adott típusú adatból képes több példányt tárolni.
A tömböket általában a "[ ... ]" szögletes zárójel párok jelölik, és létrehozásukra több lehetőségünk van.
A tömböt definiálni úgy tudjuk, hogy típus jelölője után egy "[]" szögletes zárójelpárt teszünk.
int[] tomb;
Ahhoz viszont, hogy a tömböt használni is tudjuk létre is kell hoznunk.
A tömbök létrehozására több lehetőségünk van. Vagy a tömb méretét adjuk meg.
int[] tomb;
tomb = new int[10];
Vagy pedig még a tömb definíciójánál kapcsos szárójelek között felsoroljuk az elemek kezdőértékeit.
int[] tomb = { 1, 2, 3, 4, 5 };
A tömbök elemit indexekkel érhetjük el. Szögletes zárójelek között a tömb neve után meg ell adni, hogy hanyadik elemet szeretnénk elérni. A sorszámouzás 0-tól indul, tehát a tömb első eleme a 0. indexel van jelölve.
int[] tomb = { 1, 2, 3, 4, 5 };
Console.WriteLine(tomb[0]); // kiírja, hogy "1"
Az értékadás az értékadás hasonlóan történik, cak ilyenkor a tömbneve és az elem indexe egy egyenlőségjel bal oldalán áll.
int[] tomb = new int[10];
tomb[2] = 5;
Figyelni kell még arra, hogy a a tömböknek csak azokat az elemeit érjük el, amik léteznek. Ha olyan indexre hivatkozunk a tömbben, ami nem létezik, akkor a programunk a hibával leáll.
int[] tomb = { 1, 2, 3, 4, 5 };
Console.WriteLine(tomb[2]); // kiírja, hogy "3"
Console.WriteLine(tomb[-1]); // Hiba, az indexek 0-tól indulnak felfelé
Console.WriteLine(tomb[10]); // Hiba, ebben az tömbben csak 5 elem van, a maximális tömbindex: 4.
Ha egy tömbnek a nem vagyunk biztosak a méretében, vagy futás közben szeretnénk azt kideríteni, akkor arra használhatjuk a tomb.Length adattagot a méret lekérdezéséhez. Az alábbi példa például végigmegy a tömb minden elemén, amiehz szüksgée van az elemek számára.
int[] tomb = { 1, 2, 3, 4, 5 };
for(int i=0; i<tomb.Length; i++)
{
Console.WriteLine(tomb[i]);
}