string [] ad;
Dizilerin kaç eleman içereceği, dizi tanımlanırken ya da daha sonra belirtilebilir:
string [] ad= new string[10];
string [] ad;
ad= new string[4];
Dizilerin indisleri sıfırdan başlar. Örnekteki isimler dizisinin 4 tane string
tipinden elemanı vardır.
Dizilerin elemanlarına ulaşmak için, istenilen elemanın indisi verilmesi gerekir.
ad[0] = “Metin”;
ad[1] = “Muhammed”;
ad[2] = “Fatih”;
ad[3] = “Selim”;
MessageBox.Show(ad[3]); // ad dizisi içindeki 4. sıradaki ismi verir çünkü diziler sıfırdan başlar.
Dizilere tek tek değer verilebildiği gibi, tanımlarken de başlangıç değerleri
atanabilir.
string [] ad= {"Metin","Muhammed","Fatih","Selim"};
Bazı dizi özellikleri ve metotları
Tüm diziler
Array sınıfında tanımlı özellikleri ve metotları kullanırlar.
Length Özelliği
Dizinin bütün boyutlarındaki toplam eleman sayısını veren özelliktir.
ComboBox [] ComboBoxDizisi = new ComboBox[20];
MessageBox.Show(ComboBoxDizisi.Length.ToString());
// Sonuç olarak ekrana 20 değerini verir.
int [] dizi = new int[1, 4, 4, 5, 6];
MessageBox.Show(dizi.Length.ToString());
Rank Özelliği
Dizinin boyut sayısını veren özelliktir.
MessageBox.Show(dizi.Rank.ToString());
// Sonuç olarak ekrana 5 değeri döner.
GetLength Özelliği
25
İndisi verilen boyutun kaç elemanlı olduğunu gösterir. Burada indisin
sıfırdan başladığına dikkat edilmelidir.
int [,,,,] dizi = new int[10, 40, 50, 80, 90];
MessageBox.Show(dizi.GetLength(4).ToString());
// Sonuç olarak ekrana 90 değeri döner.
Clear, Reverse, IndexOf metotları
Array sınıfında Shared olarak tanımlı metotlardır. İşlemin yapılacağı dizi parametre olarak verilmelidir.
Clear Özelliği
Parametre olarak verilen dizinin, belirtilen indis aralığındaki tüm değerleri
temizler. Temizleme işleminde atanan değer, dizi elemanlarının tiplerine
göre değişir.
Örneğin int tipinde tanımlı bir dizinin elemanları temizlenirse
0 değerini alacaktır. Buna karşın string tipindeki elemanlar "" (boş yazı)
değerini alır.
int []dizi= {12, 13, 14, 15};
Array.Clear(dizi, 1, 3); // 1. indisten başlayarak, 3 elemanı temizle
MessageBox.Show(dizi[2].ToString());
//Sonuç = 0
// Dizinin tüm elemanlarını temizler
Array.Clear(dizi, 0, dizi.Length); //0 dan başla dizinin bütün elemanlarını temizle demek.
Reverse Özelliği
Parametre olarak verilen dizinin eleman sırasını tersine çevirir.
Dizinin tüm
elemanlarının veya belirli indis aralığındaki elemanlarının sırası tersine
çevrilebilir.
string [] harfler = {"A", "B", "C"};
Array.Reverse(harfler); // harfler içindeki sıralamayı tersine çevirir.
MessageBox.Show(harfler[2]);
// Sonuç olarak ekrana A değerini döndürür.
string [] harfler = {"A", "B", "C"};
Array.Reverse(harfler, 0, 1); // 0 - 1 aralığını tersine çevirir.
MessageBox.Show(harfler[2]);
// Sonuç olarak ekrana C değeri döner.
IndexOf Özelliği
İlk parametrede verilen dizide, ikinci parametrede verilen değeri arar.
Aranan değer dizide bulunursa indisi, bulunamazsa -1 döndürür.
float [] notlar = {78.1, 99.9, 100, 12.2};
float maxNot = 100;
MessageBox.Show(Array.IndexOf(notlar, maxNot).ToString());
// notlar dizisinden maxNot değerinin indisi ver. Sonuç = 2 olarak döner.