Çok Boyutlu Diziler (Multidimensional Array)
Çok boyutlu bir dizi ‘dizinin
dizisi’ şeklinde tabir edilebilir. Her elemanı başka bir dizi olan diziler çok
boyutlu bir dizidir. Çok boyutlu bir dizi veritabanında her satırında birden
fazla kolon bulunan bir tabloya benzetilebilir. Eğer her satırda bulunan her
kolon kendi içinde başka bir dizi barındırmıyorsa bu tür dizilere 2 boyutlu
diğer bir değişle çok boyutlu diziler denir. Eğer her kolonda kendi içinde
başka bir dizi barındırıyorsa bu tür dizilere n boyutlu diziler denir. Burda n
ifadesi dizinin derinliğini ifade eder.
Çok boyutlu diziler iki çeşittir;
Düzenli Diziler: Her
satırı aynı sayıda kolon barındıran diziler.
|
Düzensiz Diziler (Jagged
Array) : Her satırı farklı sayıda kolon barındıran diziler.
|
! Dizilerin ilk elemanının
indeks numarasının 0 olduğunu unutmayın.
Dizilerin Tanımlanması ve Değer Atamaları
Tek boyutlu bir dizinin nasıl
tanımlandığını ve nasıl değer atayacağımızı yukarda anlatmıştık. Şimdi Tek
boyutlu dizi dahil tüm dizi tiplerini nasıl tanımlayacağımıza bakalım.
Tek Boyutlu Diziler:
//Dizinin Oluşturulması int[] intDizi = new int[5]; //Dizi elemanlarına değer ataması intDizi[0] = 36; //dizinin ilk elemanına 36 değeri atandı intDizi[2] = 26; //dizinin ikinci elemanına 26 değeri
atandı intDizi[4] = 32; //dizinin son elemanına 32 değeri atandı |
Çok Boyutlu Diziler:
//Dizinin Oluşturulması int[,] intCokBDizi = new int[2,
3]; //Dizi elemanlarına değer ataması intCokBDizi[0, 0] = 23; intCokBDizi[0, 1] = 25; intCokBDizi[0, 2] = 33; intCokBDizi[1, 0] = 41; intCokBDizi[1, 1] = 29; intCokBDizi[1, 2] = 93; |
Çok Boyutlu Dizilerin Elemanlarına Döngü İle Ulaşmak
for döngüsü:
//Dizi
elemanlarını for döngüsü ile bulmak. for (int row = 0; row <
intCokBDizi.GetLength(0); row++) { for (int col = 0; col <
intCokBDizi.GetLength(1); col++) { Console.WriteLine("Dizinin
{0},{1} indeksindeki değeri : {2}",row,col,intCokBDizi[row,col]); } } |
Ekran Çıktısı:
Dizinin 0,0
indeksindeki değeri : 23
Dizinin 0,1 indeksindeki değeri : 25 Dizinin 0,2 indeksindeki değeri : 33 Dizinin 1,0 indeksindeki değeri : 41 Dizinin 1,1 indeksindeki değeri : 29 Dizinin 1,2 indeksindeki değeri : 93
Devam etmek
için bir tuşa basın . . .
|
! GetLength() fonksiyonu dizinin belirtilen boyutundaki eleman sayısını verir. Yukarıdaki örnekte görüldüğü gibi parametre olarak 0 veya 1 veriyoruz. 0 dizinin birinci boyutundaki eleman sayısı yani satır sayısı, 1 verdiğimizde ise dizinin 2.boyutu yani kolon sayısını verir.
! Dizilerin
Length özelliği dizi içinde bulunan toplam eleman sayısını verir. Örneğin
yukarıdaki örnekte tanımladığımız dizi için intCokBDizi.Length sonuç olarak 6
döndürür.
Düzensiz Çok Boyutlu Diziler:
//Dizinin Oluşturulması int[][] intCokBDizi = new int[3][]; //İkinci boyutta bulunan her elemanda bir dizi olduğuna
göre //onlarıda new komutu ile ayarlamamız gerekir. intCokBDizi[0] = new int[2]; intCokBDizi[1] = new int[4]; intCokBDizi[2] = new int[3]; //Dizi elemanlarına değer ataması intCokBDizi[0][0] = 13; intCokBDizi[0][1] = 15; intCokBDizi[1][0] = 21; intCokBDizi[1][1] = 29; intCokBDizi[1][2] = 29; intCokBDizi[1][3] = 23; intCokBDizi[2][0] = 39; intCokBDizi[2][1] = 39; intCokBDizi[2][2] = 33; |
! Bir
önceki anlattığımız düzensiz çok boyutlu dizide for döngüsü kullanarak
elemanlara tek tek ulaşmıştık. Düzensiz dizilerde elemanlara tek tek ulaşmak
istediğimizde for döngüsü yerine foreach döngüsü kullanıyoruz.
Yorum Gönder Blogger Facebook