cial Icons

Ders6: Diziler

Diziler


Diziler aynı tipteki değerlerin bir arada taşınmasını sağlayan programlama ögeleridir. Örneğin dizinin 1. elemanı int tipindeyse 5. eleman string olamaz kesinlikle int tipli olmalıdır.(Farklı tipli elemanları bir arada taşıyan list ögeleri ilerleyen paylaşımlarda olacaktır.)

Diziler, elemanlarına isimleriyle değil indeks numaralarıyla erişim sağlar. Dizinin ilk elemanının indeks numarasının 0 olduğunu unutmamak gerekir.

Dizi tanımlama


Dizi değişkenleri tanımlama değişken tanımlama ile aynıdır. Örneğin string türünden kişiler dizisini şu şekilde tanımlayabiliriz à string[] kisiler;

Dizilerde en önemli kurallardan biri de dizinin eleman sayısı belirtilmese dahi önceden bilinmelidir. Örneğin 5 elemanlı bir kisiler dizisini tanımlarsak à string[] kisiler = new kisiler[5];

Ufak bir form uygulama örneğiyle yukarıda bahsettiğimiz dizileri pratiğe dökelim:
C# arayüzünde Toolbox kısmında kullanabileceğimiz ögeler bulunmaktadır. Bu ögeleri paylaşımlarımda sırasıyla kullanarak anlatacağım. Çok elemanlı bir dizinin elemanlarını gösterebilmek için en basit olarak ListBox ögesini kullanabiliriz.

Bu uygulamamızda 5 elemanlı kisiler dizisi oluşturularak bir tuşa basıldığında ögeleri listede gösteren bir örnek olsun

Öncelikle arayüzünü oluşturalım
Form sayfamızda sol tarafta bulunan Toolbox’tan(yoksa üst bardan View-ToolBox tıklayarak da açabilrisiniz ) bir tane buton ve ListBox’ı çift tıklama veya sürükle bırak şeklinde sayfamıza ekleyebiliriz.



Arayüz üzerinde Listbox’a tıkladıktan sonra sağ tarafta properties kısmından name kısmına istediğimiz ismi( lbListe vb..) yazabiliriz. Aynı şekilde butona tıklayarak da name kısmına( btnYukle ) ve Text kısmına da GÖSTER yazarak butonun üzerindeki yazıyı değiştirebiliriz. Arayüzümüz şimdi fotoğraftaki gibi oldu.


Arayüzümüzü hazırladıktan sonra butonun click olayını kullanabilmek için buton üzerinde çift tıklayarak kod alanımızı açıyoruz. Dizi tanımlama işlemini tüm metotlarda kullanabilmek için metot aralıklarının dışında gerçekleştiriyoruz. 

ListBox itemlerden oluşur. Yani dizimizdeki her bir elemanı item olarak listeye ekleyebiliriz. Listbox'ın ilk iteminin indeksinin 0 olduğunu unutmamak da fayda var. İstediğimiz zaman liste içerisindeki elemanlara indeksleri veya isimleri ile ulaşabiliriz.

Dizi elemanlarımızı direk kodumuzda gösterdiğimiz şekilde de ekleyebiliriz.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
        string[] ogrenciler = { "ibo", "Vedo", "Udubu", "Erko","Ramo" };
        private void Form2_Load(object sender, EventArgs e)
        {
             Form ilk yüklenirken bir kez de olsa buraya uğrar.
        }

        private void btnYükle_Click(object sender, EventArgs e)
        {
            lbListe.Items.Clear();
            for (int i = 0; i < ogrenciler.Length; i++)
            { 
                lbListe.Items.Add(ogrenciler[i]);
            }

        }


Foreach dögüsü:

Array sınıfından ögelerin elemanları arasında dolaşabilmemizi sağlayan diğer bir döngü yapısıdır.
Yukarıdaki for döngüsü yerine foreach döngü yapısını kullanırsak şu şekilde yazmalıyız;



 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
        string[] ogrenciler = { "ibo", "Vedo", "Udubu", "Erko","Ramo" };
        private void Form2_Load(object sender, EventArgs e)
        {

        }

        private void btnYükle_Click(object sender, EventArgs e)
        {
            lbListe.Items.Clear();

            foreach (string item in ogrenciler)
            {
                lbListe.Items.Add(item);
            }
        }

Foreach döngüsü, ogrenciler dizisinin her bir elemanını item olarak tanımlayarak dizide bulunan tüm itemleri listeye ekleyen bir döngü yapısı olarak kullanılır.

Programımızın ekran çıktısı da aynen şu şekilde :

Hiç yorum yok :

Yorum Gönder