Open
Diziler

Diziler birden fazla ve aynı tipteki değerleri üzerinde barındıran bize geri döndüren ve üzerinde işlem yapmaızı sağlayan nesnelerdir.
Diziler, aynı tipte birden fazla değeri bir arada tutmaya yarayan koleksiyonlardır.
Dizilerin içerisinde değişkenler tutulmaz. O dizinin tipinden değerler tutulur.
Dizilerde sıra numaraları 0'dan başlar. Son elemana ulaşmak için ise koleksiyonda yer alan toplam eleman sayısının bir eksiği kullanılır.
Bir dizi tanımlarken, hangi tipten dizi elde edilmek istenirse, o tipin yanına indexer operatörü olan [] simgeleri yazılır
Diziler (Array) birer sınıf (Class) olduklarından, ortaya çıkarılırken new anahtar sözcüğü (keyword) ile instance alınabilirler.


string[] isim = new string[3];

isim[0] = "Sedat";
isim[1] = "Ahmet";
isim[2] = "Mehmet";
    
string[] kume = new string[3] 
{ 
"Can", "Fatih", "Koray" 
};
    
char[] karakterler = new char[2]; 
karakterler[0] = 'X';
karakterler[1] = 'Y';

    
string[] sinif = { "Can", "Fatih", "Koray" };
    



Dizinin eleman sayısını elde etmek için, ilgili dizinin Length özelliği (property) kullanılır.
 
string[] sinif; 
protected void Page_Load(object sender, EventArgs e)
{
    sinif = new string[] { "Beyaz", "Siyah", "Mavi"};
    LblLength.Text=String.Format("Sınıfın toplam mevcudu : {0}", sinif.Length);
}

Dizideki bir elemanın sıra numarasını elde etmek için, Array sınıfının IndexOf() metodu kullanılır.
string[] sinif; 
private void button1_Click(object sender, EventArgs e)
{ 
int siraNo = Array.IndexOf(sinif, TextBox1.Text);
    if (siraNo == -1) 
        Response.Write("Sınıfta " + TextBox1.Text + " adında bir öğrenci bulunmamaktadır!");
    else
        Response.Write(String.Format("{0} sınıfta {1}. sıradadır!", TextBox1.Text, siraNo));
}

Dizide bir elemanın, sondan başlayarak sıra numarasını elde etmek için, Array sınıfının LastIndexOf() metodu kullanılır.
Elemanların dizi içerisindeki sıra numaraları hiçbir zaman DEĞİŞMEZ! IndexOf() ile LastIndexOf() birisi baştan başlayarak ilgili değeri arar, diğeri ise sondan.
string[] sinif; 
private void button2_Click(object sender, EventArgs e)
{  
    int siraNo = Array.LastIndexOf(sinif, TextBox1.Text);
    if (siraNo == -1)
        Response.Write("Sınıfta " + TextBox1.Text + " adında bir öğrenci bulunmamaktadır!");
    else
        Response.Write(String.Format("{0} sınıfta {1}. sıradadır!", TextBox1.Text, siraNo));
}



Arraylist: ArrayList sayesinde tip bağımlılığı ve eleman sayısı girmek zorunda değiliz.
protected void btnlist_Click(object sender, EventArgs e)
{
    ArrayList yenidizi = new ArrayList();
    yenidizi.Add("string Test");
    yenidizi.Add(100);
    yenidizi.Add(23.657689);
    yenidizi.Add(DateTime.Now);

    Response.Write(yenidizi.Add(1));  
}

    
17.02.2020